You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
28 lines
653 B
28 lines
653 B
import Ajv, { KeywordDefinition } from "ajv";
|
|
import { DotenvConfigOptions } from "dotenv";
|
|
|
|
export type EnvSchemaData = {
|
|
[key: string]: unknown;
|
|
};
|
|
|
|
export type EnvSchemaOpt = {
|
|
schema?: object;
|
|
data?: [EnvSchemaData, ...EnvSchemaData[]] | EnvSchemaData;
|
|
env?: boolean;
|
|
dotenv?: boolean | DotenvConfigOptions;
|
|
expandEnv?: boolean
|
|
ajv?: Ajv | {
|
|
customOptions(ajvInstance: Ajv): Ajv;
|
|
};
|
|
};
|
|
|
|
declare const loadAndValidateEnvironment: {
|
|
<T = EnvSchemaData>(_opts?: EnvSchemaOpt): T;
|
|
keywords: {
|
|
separator: KeywordDefinition;
|
|
}
|
|
}
|
|
|
|
export default loadAndValidateEnvironment;
|
|
export { loadAndValidateEnvironment as envSchema };
|