import { IWasmBindings, ISessionManager } from "@tinycloud/sdk-core";
import { tinycloud } from "@tinycloud/web-sdk-wasm";
export declare class BrowserWasmBindings implements IWasmBindings {
    ensureInitialized(): Promise<void>;
    get invoke(): import("sdk-services/dist").InvokeFunction;
    get invokeAny(): typeof tinycloud.invokeAny;
    get prepareSession(): typeof tinycloud.prepareSession;
    get completeSessionSetup(): typeof tinycloud.completeSessionSetup;
    computeCid(data: Uint8Array, codec: bigint): string;
    ensureEip55(address: string): string;
    makeSpaceId(address: string, chainId: number, prefix: string): string;
    /**
     * Create a multi-resource delegation UCAN.
     *
     * The WASM signature changed from
     *   (session, delegateDID, spaceId, path, actions, expirationSecs, notBeforeSecs)
     * to
     *   (session, delegateDID, spaceId, abilities, expirationSecs, notBeforeSecs)
     * where `abilities` is the same `Record<short service, Record<path,
     * actions[]>>` shape `prepareSession` accepts. One UCAN now covers
     * every (service, path, actions) entry in the abilities map.
     */
    createDelegation(session: any, delegateDID: string, spaceId: string, abilities: Record<string, Record<string, string[]>>, expirationSecs: number, notBeforeSecs?: number): any;
    parseRecapFromSiwe(siweString: string): {
        service: string;
        space: string;
        path: string;
        actions: string[];
    }[];
    generateHostSIWEMessage(params: any): string;
    siweToDelegationHeaders(params: any): any;
    protocolVersion(): number;
    vault_encrypt(key: Uint8Array, plaintext: Uint8Array): Uint8Array<ArrayBufferLike>;
    vault_decrypt(key: Uint8Array, blob: Uint8Array): Uint8Array<ArrayBufferLike>;
    vault_derive_key(salt: Uint8Array, signature: Uint8Array, info: Uint8Array): Uint8Array<ArrayBufferLike>;
    vault_x25519_from_seed(seed: Uint8Array): any;
    vault_x25519_dh(privateKey: Uint8Array, publicKey: Uint8Array): Uint8Array<ArrayBufferLike>;
    vault_random_bytes(length: number): Uint8Array<ArrayBufferLike>;
    vault_sha256(data: Uint8Array): Uint8Array<ArrayBufferLike>;
    createSessionManager(): ISessionManager;
}
//# sourceMappingURL=BrowserWasmBindings.d.ts.map