@envkit/nextjs
Version:
Environment variable management for Next.js applications
51 lines (50 loc) • 1.61 kB
TypeScript
/**
* Server-only exports for Next.js integration
* IMPORTANT: This file should only be imported in server components or API routes
*/
import 'server-only';
export interface LoadEnvOptions {
/**
* The directory to look for .env files
* @default process.cwd()
*/
envDir?: string;
/**
* The .env file names to look for
* @default ['.env.local', '.env.development.local', '.env.development', '.env']
*/
envFiles?: string[];
}
/**
* Result of writing environment variables to a file
*/
export interface WriteEnvResult {
success: boolean;
path: string;
error?: string;
}
export { createEnvApiHandler } from './api/createEnvApiHandler';
export type { EnvApiHandlerOptions as ApiHandlerOptions } from './api/createEnvApiHandler';
/**
* Load environment variables from .env files
* This is a server-side only function
*/
export declare function loadEnvVars(options?: LoadEnvOptions): Promise<Record<string, string | undefined>>;
/**
* Write environment variables to a .env.local file
* This is a server-side only function
*/
export interface WriteEnvOptions extends Pick<LoadEnvOptions, 'envDir'> {
/**
* Target .env file to write to
* @default '.env.local'
*/
targetEnvFile?: string;
}
export declare function writeEnvVars(variables: Record<string, string>, options?: WriteEnvOptions): Promise<WriteEnvResult>;
declare const _default: {
loadEnvVars: typeof loadEnvVars;
writeEnvVars: typeof writeEnvVars;
createEnvApiHandler: import("./api/createEnvApiHandler").CreateEnvApiHandlerType;
};
export default _default;