polyv-live-cli
Version:
CLI tool for managing PolyV live streaming services.
83 lines • 2.66 kB
TypeScript
import { AuthConfig } from './auth';
export declare function validateOutputFormat(value: string): 'table' | 'json';
export type Environment = 'development' | 'production' | 'test';
export type ConfigSource = 'cli' | 'env' | 'file' | 'global' | 'default';
export interface AppConfig {
environment: Environment;
auth: AuthConfig;
configPath?: string;
debug: boolean;
timeout: number;
baseUrl: string;
maxRetries: number;
}
export interface EnvironmentConfig {
environment: Environment;
baseUrl: string;
timeout: number;
maxRetries: number;
debug: boolean;
}
export interface ConfigOptions {
configPath?: string;
environment?: Environment;
skipEnvFile?: boolean;
envFiles?: string[];
cliOptions?: Record<string, unknown>;
}
export interface ConfigValidationResult {
isValid: boolean;
errors: string[];
warnings: string[];
missingFields: string[];
}
export interface ConfigSources {
environment: ConfigSource;
debug: ConfigSource;
timeout: ConfigSource;
baseUrl: ConfigSource;
maxRetries: ConfigSource;
configPath?: ConfigSource;
}
export interface ConfigResult {
config: AppConfig;
sources: ConfigSources;
validation: ConfigValidationResult;
loadedEnvFiles: string[];
}
export interface RawConfig {
POLYV_ENVIRONMENT?: string | undefined;
POLYV_DEBUG?: string | undefined;
POLYV_TIMEOUT?: string | undefined;
POLYV_BASE_URL?: string | undefined;
POLYV_MAX_RETRIES?: string | undefined;
POLYV_CONFIG_PATH?: string | undefined;
POLYV_APP_ID?: string | undefined;
POLYV_APP_SECRET?: string | undefined;
POLYV_USER_ID?: string | undefined;
}
export declare const DEFAULT_CONFIG: Omit<AppConfig, 'auth'>;
export declare const ENVIRONMENT_CONFIGS: Record<Environment, EnvironmentConfig>;
export declare const CONFIG_ENV_VARS: {
readonly ENVIRONMENT: "POLYV_ENVIRONMENT";
readonly DEBUG: "POLYV_DEBUG";
readonly TIMEOUT: "POLYV_TIMEOUT";
readonly BASE_URL: "POLYV_BASE_URL";
readonly MAX_RETRIES: "POLYV_MAX_RETRIES";
readonly CONFIG_PATH: "POLYV_CONFIG_PATH";
};
export declare const CONFIG_CLI_OPTIONS: {
readonly ENVIRONMENT: "environment";
readonly DEBUG: "debug";
readonly TIMEOUT: "timeout";
readonly BASE_URL: "baseUrl";
readonly MAX_RETRIES: "maxRetries";
readonly CONFIG_PATH: "config";
};
export declare const ENV_FILE_PATTERNS: {
readonly base: ".env";
readonly local: ".env.local";
readonly environment: (env: Environment) => string;
readonly environmentLocal: (env: Environment) => string;
};
//# sourceMappingURL=config.d.ts.map