import { EnvironmentConfig } from 'envolution';
import { z } from 'zod';
declare const EnvironmentSchema: z.ZodObject<{
    STAGE: z.ZodDefault<z.ZodEnum<["dev", "prod", "test"]>>;
    NODE_ENV: z.ZodOptional<z.ZodEnum<["development", "production", "test"]>>;
    LOG_LEVEL: z.ZodOptional<z.ZodEnum<["debug", "info", "warn", "error", "fatal"]>>;
    SERVICE_NAME: z.ZodOptional<z.ZodString>;
    AWS_REGION: z.ZodOptional<z.ZodString>;
    AWS_ACCESS_KEY_ID: z.ZodOptional<z.ZodString>;
    AWS_SECRET_ACCESS_KEY: z.ZodOptional<z.ZodString>;
    AWS_SESSION_TOKEN: z.ZodOptional<z.ZodString>;
    CDK_DEFAULT_ACCOUNT: z.ZodOptional<z.ZodString>;
    CDK_DEFAULT_REGION: z.ZodOptional<z.ZodString>;
    CDK_INSIGHTS_API_URL: z.ZodOptional<z.ZodString>;
    CDK_INSIGHTS_LICENSE_KEY: z.ZodOptional<z.ZodString>;
    CDK_INSIGHTS_DEBUG: z.ZodOptional<z.ZodString>;
    EDITOR: z.ZodOptional<z.ZodString>;
}, "strip", z.ZodTypeAny, {
    STAGE: "dev" | "prod" | "test";
    NODE_ENV?: "development" | "test" | "production" | undefined;
    CDK_INSIGHTS_DEBUG?: string | undefined;
    CDK_INSIGHTS_API_URL?: string | undefined;
    CDK_INSIGHTS_LICENSE_KEY?: string | undefined;
    LOG_LEVEL?: "error" | "info" | "debug" | "warn" | "fatal" | undefined;
    SERVICE_NAME?: string | undefined;
    AWS_REGION?: string | undefined;
    AWS_ACCESS_KEY_ID?: string | undefined;
    AWS_SECRET_ACCESS_KEY?: string | undefined;
    AWS_SESSION_TOKEN?: string | undefined;
    CDK_DEFAULT_ACCOUNT?: string | undefined;
    CDK_DEFAULT_REGION?: string | undefined;
    EDITOR?: string | undefined;
}, {
    NODE_ENV?: "development" | "test" | "production" | undefined;
    CDK_INSIGHTS_DEBUG?: string | undefined;
    CDK_INSIGHTS_API_URL?: string | undefined;
    STAGE?: "dev" | "prod" | "test" | undefined;
    CDK_INSIGHTS_LICENSE_KEY?: string | undefined;
    LOG_LEVEL?: "error" | "info" | "debug" | "warn" | "fatal" | undefined;
    SERVICE_NAME?: string | undefined;
    AWS_REGION?: string | undefined;
    AWS_ACCESS_KEY_ID?: string | undefined;
    AWS_SECRET_ACCESS_KEY?: string | undefined;
    AWS_SESSION_TOKEN?: string | undefined;
    CDK_DEFAULT_ACCOUNT?: string | undefined;
    CDK_DEFAULT_REGION?: string | undefined;
    EDITOR?: string | undefined;
}>;
export type Environment = z.infer<typeof EnvironmentSchema>;
export declare const env: {
    get: <K extends keyof Environment>(key: K) => Environment[K];
    getRequired: <K extends keyof Environment>(key: K, context?: string) => NonNullable<Environment[K]>;
    getAll: () => Environment;
    readonly stage: Environment["STAGE"];
    readonly isProduction: boolean;
    readonly isDevelopment: boolean;
    readonly isTest: boolean;
};
export declare const envConfigInstance: EnvironmentConfig<{
    NODE_ENV?: "development" | "test" | "production" | undefined;
    CDK_INSIGHTS_DEBUG?: string | undefined;
    CDK_INSIGHTS_API_URL?: string | undefined;
    STAGE?: "dev" | "prod" | "test" | undefined;
    CDK_INSIGHTS_LICENSE_KEY?: string | undefined;
    LOG_LEVEL?: "error" | "info" | "debug" | "warn" | "fatal" | undefined;
    SERVICE_NAME?: string | undefined;
    AWS_REGION?: string | undefined;
    AWS_ACCESS_KEY_ID?: string | undefined;
    AWS_SECRET_ACCESS_KEY?: string | undefined;
    AWS_SESSION_TOKEN?: string | undefined;
    CDK_DEFAULT_ACCOUNT?: string | undefined;
    CDK_DEFAULT_REGION?: string | undefined;
    EDITOR?: string | undefined;
}>;
export {};
