UNPKG

@vulform/core

Version:

Core utilities and types for VulForm packages

55 lines 2.29 kB
/** * VulForm Shared Configuration * Centralized configuration that can be customized at build time and runtime */ export declare const VULFORM_CONFIG: { baseUrl: string | undefined; cdnUrl: string | undefined; version: string; environment: string; DEFAULT_BASE_URL: string; DEFAULT_CDN_URL: string; DEFAULT_TIMEOUT: number; DEFAULT_RETRIES: number; SELF_HOSTED_BASE_URL: string; LOCAL_DEV_BASE_URL: string; SDK_VERSION: string; SDK_NAME: string; AUTHOR: string; ORGANIZATION: string; HOMEPAGE: string; REPOSITORY: string; }; export interface VulFormConfig { baseUrl?: string; cdnUrl?: string; timeout?: number; retries?: number; version?: string; environment?: 'development' | 'production' | 'test'; } export type URLResolutionStrategy = 'saas' | 'self-hosted' | 'custom' | 'auto'; export declare class ConfigBuilder { private config; private strategy; constructor(overrides?: Partial<VulFormConfig>, strategy?: URLResolutionStrategy); private resolveBaseUrl; private resolveCdnUrl; private isLocalDevelopment; setBaseUrl(url: string): ConfigBuilder; setCdnUrl(url: string): ConfigBuilder; setEnvironment(env: 'development' | 'production' | 'test'): ConfigBuilder; setStrategy(strategy: URLResolutionStrategy): ConfigBuilder; build(): Required<VulFormConfig>; } export declare const getDefaultConfig: (overrides?: Partial<VulFormConfig>, strategy?: URLResolutionStrategy) => Required<VulFormConfig>; export declare const resolveApiUrl: (providedUrl?: string, strategy?: URLResolutionStrategy) => string; export declare const createSaaSConfig: (overrides?: Partial<VulFormConfig>) => Required<VulFormConfig>; export declare const createSelfHostedConfig: (overrides?: Partial<VulFormConfig>) => Required<VulFormConfig>; export declare const createCustomConfig: (baseUrl: string, overrides?: Partial<VulFormConfig>) => Required<VulFormConfig>; export declare const isDevelopment: () => boolean; export declare const isProduction: () => boolean; export declare const isSelfHosted: () => boolean; export declare const isValidVulFormUrl: (url: string) => boolean; export declare const normalizeApiUrl: (url: string) => string; //# sourceMappingURL=index.d.ts.map