import type { MeetingBase } from '../interfaces/core'; import { HttpClient } from '../utils/httpClient'; /** * Meeting class representing a meeting recording bot */ export declare class Meeting { #private; id: string; collectionId: string; botName?: string; meetingTitle?: string; meetingUrl?: string; status?: string; timeZone?: string; videoId?: string; speakerTimeline?: Record; constructor(http: HttpClient, data: MeetingBase); private _updateAttributes; /** * Refresh meeting data from the server * @returns The Meeting instance with updated data */ refresh: () => Promise; /** * Check if the meeting is currently active */ get isActive(): boolean; /** * Check if the meeting has completed */ get isCompleted(): boolean; /** * Wait for the meeting to reach a specific status * @param targetStatus - The status to wait for * @param timeout - Maximum time to wait in seconds (default: 14400) * @param interval - Time between status checks in seconds (default: 120) * @returns True if status reached, False if timeout */ waitForStatus: (targetStatus: string, timeout?: number, interval?: number) => Promise; }