import { IndexedDb } from '../db'; import { EMITTER_TYPE, QUERY_RESULT, QUERY_RESULTS, QUERY_TYPE, Repository } from './index'; import { EventEntity } from '../data/Event'; import { AuthenticationService } from "../service/authenticationService"; import { Logger } from "../utils/logger"; import { PubSubService } from "type-pubsub"; interface Args { account?: string; eventId?: string; timeZone?: string; userIds?: string[]; start?: Date; end?: Date; } export declare class ExternalEventRepository extends Repository { REPOSITORY_NAME: string; private externalEventDb; private eventService; private eventMetaStorage; constructor(authenticationService: AuthenticationService, indexedDb: IndexedDb, baseURL: string, logger?: Logger); dispose(): void; protected onCascadeDelete(data: any, message: EMITTER_TYPE, channel: PubSubService, handler: any): Promise; getEvent(bearer: string, organisationEmail: string, eventId: string, timeZone?: string, mode?: QUERY_TYPE): Promise>; getEvents(bearer: string, organisationEmail: string, userIds: string[], start: Date, end: Date, timeZone?: string, mode?: QUERY_TYPE): Promise>; getIcs(bearer: string, icsUrl: string): Promise; deleteLocalExternalEvents(): Promise; protected remoteList(bearer: string, args: Args): Promise; protected remoteGet(bearer: string, args: Args): Promise; protected remoteCreate(bearer: string, args: Args, item: EventEntity): Promise; protected remoteUpdate(bearer: string, args: Args, item: EventEntity): Promise; protected remoteDelete(bearer: string, args: Args): Promise; protected localList(args: Args): Promise; protected localGet(args: Args): Promise; protected localBulkSave(args: Args, events: EventEntity[]): Promise; protected localDelete(args: Args): Promise; protected localBulkDelete(items: EventEntity[]): Promise; private localDeleteByUser; } export {};