import type { ExecutionContext } from 'hono'; export declare const browserApiPath = "/api/client"; export declare const hookfishApiPath = "/api"; /** Whether an API operation is safe for the credential-injecting client facade. */ export declare function isAllowedClientRequest(method: string, pathname: string): boolean; export declare const isAllowedBrowserApiRequest: typeof isAllowedClientRequest; export type HealthResponse = { ok: true; runtime: string; checkedAt: string; }; export type HookfishFetch = (request: Request, bindings?: Bindings, executionContext?: ExecutionContext) => Response | Promise; export type BrowserRequestAuthorizer = (request: Request, bindings: Bindings | undefined) => Response | undefined | Promise; export type HookfishBackendOptions = { config: { includeClient?: boolean; trustedOrigins?: readonly string[]; }; hookfishFetch: HookfishFetch; /** Override the configured browser origins for runtime-specific deployments. */ browserOrigins?: readonly string[] | ((bindings: Bindings | undefined) => readonly string[]); /** Resolve the root or scoped credential used only by the browser facade. */ brokerApiKey?: string | ((bindings: Bindings | undefined) => string); /** Optional application/session authorization before the facade is used. */ authorizeBrowserRequest?: BrowserRequestAuthorizer; runtime?: string | ((bindings: Bindings | undefined) => string); }; export type HookfishBackend = { fetch(request: Request, bindings?: Bindings, executionContext?: ExecutionContext): Promise; }; /** Compose the raw API with the optional browser-safe `/api/client` facade. */ export declare function createHookfishBackend(options: HookfishBackendOptions): HookfishBackend; //# sourceMappingURL=client.d.ts.map