/** * @interface CommunicationCoordinatorConfig * @description Configuration for the GCP Communication Coordinator. */ export interface CommunicationCoordinatorConfig { projectID: string; pubSubTopic?: string; cloudStorageBucket?: string; firebaseDatabaseUrl?: string; cdnService?: string; endpointsService?: string; } /** * @interface CommunicationCoordinatorOperations * @description Defines operations for coordinating across GCP communication and storage services. */ export interface CommunicationCoordinatorOperations { publishMessage(topic: string, message: any): Promise; subscribeToTopic(topic: string, handler: (message: any) => void): Promise; uploadAgentState(agentId: string, state: any): Promise; downloadAgentState(fileUrl: string): Promise; syncRealtimeData(path: string, data: any): Promise; getRealtimeData(path: string): Promise; distributeDataGlobally(data: any): Promise; } /** * @class CommunicationCoordinator * @description Orchestrates real-time messaging, persistent storage, and data distribution across Google Cloud Pub/Sub, Cloud Storage, Firebase Realtime Database, Cloud CDN, and Cloud Endpoints. */ export declare class CommunicationCoordinator implements CommunicationCoordinatorOperations { private config; private logger; constructor(config: CommunicationCoordinatorConfig); /** * Publishes a message to a Google Cloud Pub/Sub topic. * @param {string} topic The Pub/Sub topic to publish to. * @param {any} message The message payload. * @returns {Promise} */ publishMessage(topic: string, message: any): Promise; /** * Subscribes to a Google Cloud Pub/Sub topic. * @param {string} topic The Pub/Sub topic to subscribe to. * @param {(message: any) => void} handler The message handler function. * @returns {Promise} */ subscribeToTopic(topic: string, handler: (message: any) => void): Promise; /** * Uploads agent state to Google Cloud Storage. * @param {string} agentId The ID of the agent. * @param {any} state The agent's state to upload. * @returns {Promise} The URL of the uploaded state file. */ uploadAgentState(agentId: string, state: any): Promise; /** * Downloads agent state from Google Cloud Storage. * @param {string} fileUrl The URL of the state file. * @returns {Promise} The downloaded agent state. */ downloadAgentState(fileUrl: string): Promise; /** * Synchronizes real-time data using Firebase Realtime Database. * @param {string} path The path in the database. * @param {any} data The data to synchronize. * @returns {Promise} */ syncRealtimeData(path: string, data: any): Promise; /** * Retrieves real-time data from Firebase Realtime Database. * @param {string} path The path in the database. * @returns {Promise} The retrieved data. */ getRealtimeData(path: string): Promise; /** * Distributes data globally using Cloud CDN. * @param {any} data The data to distribute. * @returns {Promise} The CDN URL for the distributed data. */ distributeDataGlobally(data: any): Promise; } //# sourceMappingURL=communication-coordinator.d.ts.map