import { NextFunction, Request, Response } from 'express'; import { Adapter, CallEvent, Config, ContactCache, ContactTemplate, ContactUpdate } from '.'; import { BridgeRequest, IdBridgeRequest, IntegrationEntityBridgeRequest } from './bridge-request.model'; export declare class Controller { private adapter; private contactCache; private pubSubContactStreamingClient; private pubSubIntegrationEventsClient; private additionalPubSubContactStreamingClient; private integrationName; private streamingPromises; private isShuttingDown; constructor(adapter: Adapter, contactCache: ContactCache | null); private initContactStreaming; private initContactChanges; isValidToken(req: BridgeRequest, res: Response, next: NextFunction): Promise; getContacts(req: BridgeRequest, res: Response, next: NextFunction): Promise; streamContacts(req: BridgeRequest, res: Response, next: NextFunction): Promise; getContact(req: BridgeRequest, res: Response, next: NextFunction): Promise; createContact(req: BridgeRequest, res: Response, next: NextFunction): Promise; updateContact(req: IdBridgeRequest, res: Response, next: NextFunction): Promise; deleteContact(req: IdBridgeRequest, res: Response, next: NextFunction): Promise; /** * @deprecated Use createOrUpdateCallLogForEntities instead * @param req * @param res * @param next */ handleCallEvent(req: BridgeRequest, res: Response, next: NextFunction): Promise; handleConnectedEvent(req: BridgeRequest, res: Response, next: NextFunction): Promise; handleDisconnectedEvent(req: BridgeRequest, res: Response, next: NextFunction): Promise; /** * @deprecated Use createOrUpdateCallLogForEntities instead * @param req * @param res * @param next */ updateCallEvent(req: BridgeRequest, res: Response, next: NextFunction): Promise; getEntity(req: IntegrationEntityBridgeRequest, res: Response, next: NextFunction): Promise; getEntitiesForContact(req: { providerConfig?: Config; params: { id: string; }; }, res: Response, next: NextFunction): Promise; getHealth(req: BridgeRequest, res: Response, next: NextFunction): Promise; oAuth2Redirect(req: Request, res: Response, next: NextFunction): Promise; oAuth2Callback(req: Request, res: Response): Promise; oAuth2Token(req: Request, res: Response): Promise; getAccountId(req: BridgeRequest, res: Response, next: NextFunction): Promise; shutdown(): Promise; handleWebhook(req: Request, res: Response, next: NextFunction): Promise; }