Skip to content

Commit 4c20ac0

Browse files
committed
resolve merge
2 parents 81ce845 + 21d2ecc commit 4c20ac0

File tree

3 files changed

+40
-18
lines changed

3 files changed

+40
-18
lines changed

README.md

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -233,6 +233,14 @@ describe('concat.js', function () {
233233

234234
```
235235

236+
## TypeScript
237+
To use with TypeScript, just import it like this:
238+
```ts
239+
import env from 'get-env';
240+
241+
const stringVar = env('STRING').required().asString();
242+
```
243+
236244
## Contributors
237245
* @MikeyBurkman
238246
* @itavy

env-var.d.ts

Lines changed: 28 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -1,22 +1,33 @@
11

2-
declare function E (varName: string, defaultValue?: string): E.IVariable;
3-
4-
declare namespace E {
5-
6-
interface IVariable {
7-
required: () => IVariable,
8-
asInt: () => number,
9-
asFloat: () => number,
10-
asPositiveInt: () => number,
11-
asNegativeInt: () => number,
12-
asString: () => string,
13-
asJson: () => Object|Array<any>,
14-
asBool: () => boolean,
15-
asStrictBool: () => boolean,
16-
}
2+
export interface IPresentVariable {
3+
asFloat: () => number;
4+
asInt: () => number;
5+
asPositiveInt: () => number;
6+
asNegativeInt: () => number;
7+
asString: () => string;
8+
asJson: () => Object|Array<any>;
9+
asBool: () => boolean;
10+
asStrictBool: () => boolean;
11+
}
1712

18-
function mock (mockValues: Object): (varName: string, defaultValue?: string) => E.IVariable;
13+
export interface IOptionalVariable {
14+
required: () => IPresentVariable;
15+
asFloat: () => number|undefined;
16+
asInt: () => number|undefined;
17+
asPositiveInt: () => number|undefined;
18+
asNegativeInt: () => number|undefined;
19+
asString: () => string|undefined;
20+
asJson: () => Object|Array<any>|undefined;
21+
asBool: () => boolean|undefined;
22+
asStrictBool: () => boolean|undefined;
23+
}
1924

25+
export interface IEnv {
26+
(): Object,
27+
(varName: string): IOptionalVariable;
28+
(varName: string, defaultValue: string): IPresentVariable;
29+
mock(mockVars: Object): IEnv;
2030
}
2131

22-
export = E;
32+
export const env: IEnv;
33+
export default env;

package.json

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,10 @@
2525
],
2626
"author": "Evan Shortiss",
2727
"license": "MIT",
28-
"files": ["lib/", "env-var.d.ts"],
28+
"files": [
29+
"lib/",
30+
"env-var.d.ts"
31+
],
2932
"bugs": {
3033
"url": "https://github.com/evanshortiss/env-var/issues"
3134
},

0 commit comments

Comments
 (0)