export type BotResource = `${string}:${string}`; export type GetUcanToken = (botUrl: string, resource: BotResource) => Promise; export declare const MATRIX_BOT_RESOURCES: { readonly stateBot: "ixo:matrix-state-bot"; readonly roomsBot: "ixo:matrix-rooms-bot"; readonly claimBot: "ixo:matrix-claims-bot"; }; interface UcanTokenProviderConfig { mnemonic: string; did: string; ttlSeconds?: number; } export declare class UcanTokenProvider { private readonly mnemonic; private readonly did; private readonly ttlSeconds; private signer; private readonly serviceDids; private readonly tokens; private mutex; constructor(config: UcanTokenProviderConfig); private withMutex; private getSigner; private resolveServiceDid; getToken(botUrl: string, resource: BotResource): Promise; } export declare function createUcanTokenProvider(config: UcanTokenProviderConfig): GetUcanToken; export {}; //# sourceMappingURL=ucan-token-provider.d.ts.map