interface BackendConfiguration { name: string; target: string; hostOverride?: string; connectTimeout?: number; firstByteTimeout?: number; betweenBytesTimeout?: number; useSSL?: boolean; tlsMinVersion?: number; tlsMaxVersion?: number; certificateHostname?: string; caCertificate?: string; ciphers?: string; sniHostname?: string; } export declare class Backend { private config; constructor(configuration: BackendConfiguration); toString(): string; } export declare class CacheOverride { mode: "none" | "pass" | "override"; ttl?: number; swr?: number; surrogateKey?: string; pci?: boolean; constructor(mode: "none" | "pass" | "override", init?: { ttl?: number; swr?: number; surrogateKey?: string; pci?: boolean; }); } interface PurgeOptions { scope: "pop" | "global"; } export declare class SimpleCache { static _cacheEntry: Map; static get(key: string): SimpleCacheEntry | null; static set(key: string, value: BodyInit, ttl: number, length?: number): undefined; static getOrSet(key: string, set: () => Promise<{ value: BodyInit | ReadableStream; ttl: number; length?: number; }>): Promise; static purge(key: string, options: PurgeOptions): undefined; } export declare class SimpleCacheEntry implements SimpleCacheEntry { private data; constructor(data: BodyInit); get body(): ReadableStream; get bodyUsed(): boolean; text(): Promise; json(): Promise; arrayBuffer(): Promise; } export declare class ConfigStore { private name; constructor(name: string); get(key: string): string | null; } export declare class Dictionary { private name; constructor(name: string); get(key: string): string | null; } export declare function env(name: string): string; export declare function setBaseURL(base: URL | null | undefined): void; export declare function setDefaultBackend(backend: string): void; export declare function enableDebugLogging(enabled: boolean): void; export declare function includeBytes(path: string): Uint8Array; export declare function allowDynamicBackends(enabled: boolean): void; export declare function createFanoutHandoff(request: Request, backend: string): Response; export interface Geolocation { as_name: string | null; as_number: number | null; area_code: number | null; city: string | null; conn_speed: string | null; conn_type: string | null; continent: string | null; country_code: string | null; country_code3: string | null; country_name: string | null; gmt_offset: string | null; latitude: number | null; longitude: number | null; metro_code: number | null; postal_code: string | null; proxy_description: string | null; proxy_type: string | null; region: string | null; utc_offset: number | null; } export declare function getGeolocationForIpAddress(address: string): Geolocation; export declare class Logger { private name; constructor(name: string); log(message: any): void; } declare class KVStoreEntry implements KVStoreEntry { private data; constructor(data: BodyInit); get body(): ReadableStream; get bodyUsed(): boolean; text(): Promise; json(): Promise; arrayBuffer(): Promise; } export declare class KVStore { private name; private store; constructor(name: string); get(key: string): Promise; put(key: string, value: BodyInit): Promise; } export declare class SecretStoreEntry { private name; constructor(name: string); plaintext(): string; } export declare class SecretStore { private name; constructor(name: string); get(key: string): Promise; } export {};