import { type ProxySettings, type SignedProxyConfig } from '../adapters/SqlProxyAdapterUtils';
export type ProxyMode = 'sql' | 'registry';
export type ProxySettingsBuildInput = {
    urlKey: string;
    hostKey?: string;
    portKey?: string;
    defaultHost?: string;
    defaultPort?: number;
    keyIdKey: string;
    secretKey: string;
    timeoutKey: string;
    sharedKeyIdKey?: string;
    sharedSecretKey?: string;
    sharedTimeoutKey?: string;
};
export declare const SqlProxyHttpAdapterShared: Readonly<{
    buildProxySettingsFromEnv: (input: ProxySettingsBuildInput) => ProxySettings;
    buildStandardSignedProxyConfig: (input: {
        settings: ProxySettings;
        label: string;
        urlKey: string;
        keyIdKey: string;
        secretKey: string;
    }) => SignedProxyConfig;
    ensureSignedProxyConfig: (signed: SignedProxyConfig) => void;
    requestProxy: <T>(signed: SignedProxyConfig, path: string, payload: Record<string, unknown>) => Promise<T>;
    resolveProxyModeFromEnv: (envKey: string) => ProxyMode;
    createProxyNotReachableCliError: (label: string, baseUrl: string, error: unknown) => Error;
}>;
//# sourceMappingURL=SqlProxyHttpAdapterShared.d.ts.map