UNPKG

@strattadb/environment

Version:

Environment variable configuration for Node.js made easy.

22 lines 785 B
/// <reference types="node" /> import { Parser } from './parsers'; export declare type Env<TSchemaData> = { [TKey in keyof TSchemaData]: TSchemaData[TKey]; }; export declare type Schema<TSchemaData> = { [TKey in keyof TSchemaData]: SchemaEntry<TSchemaData[TKey]>; }; export declare type SchemaEntry<TType> = { parser: Parser<TType>; envVarName: string; description?: string; } & SchemaEntryRequiredInfo<TType>; export declare type SchemaEntryRequiredInfo<TType> = { required: true; defaultValue?: undefined; } | { required: false; defaultValue: TType; }; export declare function makeEnv<TSchemaData extends Record<string, any>>(schema: Schema<TSchemaData>, processEnv?: NodeJS.ProcessEnv): Env<TSchemaData>; //# sourceMappingURL=environment.d.ts.map