import { type OwnerBindingDeps } from "./owner-binding.js"; export declare const SERVER_REGISTRATION_INTENT = "personal_server.server_registration.v1"; /** What the server's prepareRegistration() returns; the CLI only reads the typed data. */ export interface RegistrationRequest { typedData: { domain?: { chainId?: number | string; verifyingContract?: string; }; message?: { serverAddress?: string; publicKey?: string; serverUrl?: string; }; }; } /** Account needs the browser: the silent path is closed for this owner or client. */ export declare class RegistrationNeedsBrowserError extends Error { readonly code: string; constructor(code: string); } export interface RegistrationSignature { signature: string; signerAddress: string | null; via: "silent" | "browser"; } /** The fields Account signs, from the server's own registration request. */ export declare function registrationPayload(request: RegistrationRequest): Record; /** * Have Account sign the server's registration as its owner. Account signs * silently when the owner's wallet lives in Account and the trust token from * the owner confirmation is valid, as it does for Desktop; otherwise the * person confirms in the browser. */ export declare function signServerRegistration(input: { accountUrl: string; accessToken: string; trustToken: string | null; request: RegistrationRequest; allowBrowser: boolean; }, deps: OwnerBindingDeps): Promise; //# sourceMappingURL=registration.d.ts.map