@lineai/gov-deals
Version:
Explore Federal contracts for government building renovations, city hall renovations, courthouse updates, library modernizations, federal building improvement contracts, base housing and facilities upgrades.
80 lines (79 loc) • 2.24 kB
TypeScript
/**
* Configuration management for the gov-deals package
*/
import { z } from 'zod';
/**
* Configuration schema for validation
*/
export declare const ConfigSchema: z.ZodObject<{
samGov: z.ZodObject<{
apiKey: z.ZodString;
baseUrl: z.ZodDefault<z.ZodString>;
timeout: z.ZodDefault<z.ZodNumber>;
retryAttempts: z.ZodDefault<z.ZodNumber>;
retryDelay: z.ZodDefault<z.ZodNumber>;
}, "strip", z.ZodTypeAny, {
timeout: number;
apiKey: string;
baseUrl: string;
retryAttempts: number;
retryDelay: number;
}, {
apiKey: string;
timeout?: number | undefined;
baseUrl?: string | undefined;
retryAttempts?: number | undefined;
retryDelay?: number | undefined;
}>;
cache: z.ZodObject<{
enabled: z.ZodDefault<z.ZodBoolean>;
ttlSeconds: z.ZodDefault<z.ZodNumber>;
maxSize: z.ZodDefault<z.ZodNumber>;
}, "strip", z.ZodTypeAny, {
enabled: boolean;
ttlSeconds: number;
maxSize: number;
}, {
enabled?: boolean | undefined;
ttlSeconds?: number | undefined;
maxSize?: number | undefined;
}>;
debug: z.ZodDefault<z.ZodBoolean>;
}, "strip", z.ZodTypeAny, {
samGov: {
timeout: number;
apiKey: string;
baseUrl: string;
retryAttempts: number;
retryDelay: number;
};
cache: {
enabled: boolean;
ttlSeconds: number;
maxSize: number;
};
debug: boolean;
}, {
samGov: {
apiKey: string;
timeout?: number | undefined;
baseUrl?: string | undefined;
retryAttempts?: number | undefined;
retryDelay?: number | undefined;
};
cache: {
enabled?: boolean | undefined;
ttlSeconds?: number | undefined;
maxSize?: number | undefined;
};
debug?: boolean | undefined;
}>;
export type Config = z.infer<typeof ConfigSchema>;
/**
* Create configuration from environment variables and options
*/
export declare function createConfig(options?: Partial<Config>): Config;
/**
* Validate that required configuration is present
*/
export declare function validateConfig(config: Config): void;