/**
 * Transparent proxy for all outgoing fetch requests.
 * Auto-patches global fetch on import - just import and go.
 *
 * Usage:
 *   import '@vibecodeapp/proxy'
 *
 * For more control:
 *   import { configure } from '@vibecodeapp/proxy'
 *   configure({ excludeDomains: ['api.openai.com'] })
 *
 * For manual initialization (no auto-patch):
 *   import { init } from '@vibecodeapp/proxy/manual'
 *
 * Set credentials via environment variables:
 *   VIBECODE_PROJECT_ID - Your project ID (used for both auth username and password)
 */
/**
 * Configuration options for the proxy
 */
export interface ProxyConfig {
    /** Project ID for authentication */
    projectId?: string;
    /** Domains to exclude from proxying (use your own API keys) */
    excludeDomains?: string[];
    /** Override the default proxied domains list */
    proxiedDomains?: string[];
}
/**
 * Set proxy project ID programmatically
 */
export declare function setProxyProjectId(projectId: string): void;
/**
 * Set proxied domains programmatically
 */
export declare function setProxiedDomains(domains: string[]): void;
/**
 * Set excluded domains programmatically
 */
export declare function setExcludedDomains(domains: string[]): void;
/**
 * Add domains to the exclusion list
 */
export declare function addExcludedDomains(domains: string[]): void;
/**
 * Get the original unpatched fetch
 */
export declare function getOriginalFetch(): typeof fetch;
/**
 * Configure the proxy with custom settings.
 * Call this after importing to customize behavior.
 *
 * @example
 * import { configure } from '@vibecodeapp/proxy'
 * configure({
 *   excludeDomains: ['api.openai.com'], // Use your own OpenAI key
 * })
 */
export declare function configure(config: ProxyConfig): void;
//# sourceMappingURL=proxy.d.ts.map