mirror of
https://github.com/gosticks/DefinitelyTyped.git
synced 2025-10-16 12:05:41 +00:00
49 lines
2.0 KiB
TypeScript
49 lines
2.0 KiB
TypeScript
import * as getenv from 'getenv';
|
|
import { UrlWithStringQuery } from 'url';
|
|
|
|
getenv('FOO'); // $ExpectType string
|
|
getenv('FOO', 'bar'); // $ExpectType string
|
|
getenv('FOO', 123); // $ExpectError
|
|
|
|
getenv.string('FOO'); // $ExpectType string
|
|
getenv.string('FOO', 'bar'); // $ExpectType string
|
|
getenv.string('FOO', 123); // $ExpectError
|
|
|
|
getenv.array('FOO'); // $ExpectType string[]
|
|
getenv.array('FOO', 'int'); // $ExpectType number[]
|
|
|
|
getenv.bool('FOO'); // $ExpectType boolean
|
|
getenv.bool('FOO', true); // $ExpectType boolean
|
|
getenv.bool('FOO', 'true'); // $ExpectError
|
|
|
|
getenv.int('FOO'); // $ExpectType number
|
|
getenv.int('FOO', 123); // $ExpectType number
|
|
getenv.int('FOO', '123'); // $ExpectError
|
|
|
|
getenv.float('FOO'); // $ExpectType number
|
|
getenv.float('FOO', 123.55); // $ExpectType number
|
|
getenv.float('FOO', '123.55'); // $ExpectError
|
|
|
|
getenv.boolish('FOO'); // $ExpectType boolean
|
|
getenv.boolish('FOO', false); // $ExpectType boolean
|
|
getenv.boolish('FOO', 'false'); // $ExpectError
|
|
|
|
getenv.url('FOO'); // $ExpectType UrlWithStringQuery
|
|
// tslint:disable-next-line:no-object-literal-type-assertion
|
|
getenv.url('FOO', {} as UrlWithStringQuery); // $ExpectType UrlWithStringQuery
|
|
getenv.url('FOO', {}); // $ExpectError
|
|
|
|
getenv.array('FOO'); // $ExpectType string[]
|
|
getenv.array('FOO', 'int'); // $ExpectType number[]
|
|
getenv.array('FOO', 'int', [1]); // $ExpectType number[]
|
|
getenv.array('FOO', 'int', ['bar']); // $ExpectError
|
|
|
|
getenv.multi({ foo: 'BAR' }); // $ExpectType { foo: string; }
|
|
getenv.multi({ foo: ['BAR', 'baz'] }); // $ExpectType { foo: string; }
|
|
getenv.multi({ foo: ['BAR', 'baz', 'string'] }); // $ExpectType { foo: string; }
|
|
getenv.multi({ foo: ['BAR', true, 'bool'] }); // $ExpectType { foo: boolean; }
|
|
getenv.multi({ foo: ['BAR', 1.55, 'float'] }); // $ExpectType { foo: number; }
|
|
// tslint:disable-next-line:no-object-literal-type-assertion
|
|
getenv.multi({ foo: ['BAR', {} as UrlWithStringQuery, 'url'] }); // $ExpectType { foo: UrlWithStringQuery; }
|
|
getenv.multi({ foo: ['BAR', 'baz', 'int'] }); // $ExpectError
|