import type { WebexMembership, WebexMessage, WebexPerson, WebexSpace } from './types.js'; interface WebexClientOptions { roomResolutionWarningPrefix?: string; } export declare class WebexClient { private token; private deviceUrl; private tokenType; private buckets; private globalRateLimitUntil; private encryption; private clusteredRoomIds; private roomIdLookups; private roomResolutionWarningPrefix; constructor(options?: WebexClientOptions); login(credentials?: { token: string; deviceUrl?: string; tokenType?: string; }): Promise; private initializeEncryption; dispose(): Promise; getToken(): string; private persistEncryptionKey; private ensureAuth; private getBucketKey; private waitForRateLimit; private updateBucket; private handleRateLimitResponse; private sleep; private request; private requestWithLink; testAuth(): Promise; private testAuthInternal; listSpaces(options?: { type?: string; max?: number; }): Promise; iterateSpaces(options?: { type?: string; max?: number; }): AsyncGenerator; resolveRoomId(roomId: string): Promise; resolvePersonId(personId: string): Promise; getSpace(spaceId: string): Promise; sendMessage(roomId: string, text: string, options?: { markdown?: boolean; parentId?: string; files?: string[]; }): Promise; setTyping(roomId: string, typing?: boolean): Promise; private get useInternalAPI(); private get convBaseUrl(); private get internalHeaders(); private decodeConvUuid; private internalRequest; private activityToMessage; private buildEncryptedObject; private sendMessageInternal; sendDirectMessage(personEmail: string, text: string, options?: { markdown?: boolean; }): Promise; private findDirectRoomByEmail; listMessages(roomId: string, options?: { max?: number; mentionedPeople?: string; parentId?: string; }): Promise; getMessage(messageId: string): Promise; deleteMessage(messageId: string): Promise; editMessage(messageId: string, roomId: string, text: string, options?: { markdown?: boolean; }): Promise; listPeople(options?: { email?: string; displayName?: string; max?: number; }): Promise; getPerson(personId: string): Promise; listMyMemberships(options?: { max?: number; }): Promise; listMemberships(roomId: string, options?: { max?: number; }): Promise; uploadFile(roomId: string, file: { content: Blob; filename: string; }, options?: { text?: string; markdown?: boolean; parentId?: string; }): Promise; private uploadFileInternal; private uploadFileContent; private uploadToSpace; private internalActivityRequest; private lookupRoomId; private resolveMessageOptions; private resolveListMessageOptions; private resolveMentionedPeople; private resolveMessageId; private toMessageRef; private normalizeMessageId; private normalizePersonId; downloadContent(contentRef: string): Promise<{ data: ArrayBuffer; filename: string; contentType: string; }>; private resolveContentUrl; } export {}; //# sourceMappingURL=client.d.ts.map