import { IDisposable } from "../../Types/Contracts"; import { DocumentStore } from "../DocumentStore"; import { SubscriptionCreationOptions } from "./SubscriptionCreationOptions"; import { DocumentType } from "../DocumentAbstractions"; import { SubscriptionWorkerOptions } from "./SubscriptionWorkerOptions"; import { Revision } from "./Revision"; import { SubscriptionState } from "./SubscriptionState"; import { SubscriptionWorker } from "./SubscriptionWorker"; import { SubscriptionUpdateOptions } from "./SubscriptionUpdateOptions"; export declare class DocumentSubscriptions implements IDisposable { private readonly _store; private readonly _subscriptions; constructor(store: DocumentStore); create(options: SubscriptionCreationOptions): Promise; create(options: SubscriptionCreationOptions, database: string): Promise; create(documentType: DocumentType): Promise; createForRevisions(options: SubscriptionCreationOptions): Promise; createForRevisions(options: SubscriptionCreationOptions, database: string): Promise; private _ensureCriteria; getSubscriptionWorker(options: SubscriptionWorkerOptions): SubscriptionWorker; getSubscriptionWorker(options: SubscriptionWorkerOptions, database: string): SubscriptionWorker; getSubscriptionWorker(subscriptionName: string): SubscriptionWorker; getSubscriptionWorker(subscriptionName: string, database: string): SubscriptionWorker; getSubscriptionWorkerForRevisions(options: SubscriptionWorkerOptions): SubscriptionWorker>; getSubscriptionWorkerForRevisions(options: SubscriptionWorkerOptions, database: string): SubscriptionWorker>; getSubscriptions(start: number, take: number): Promise; getSubscriptions(start: number, take: number, database: string): Promise; delete(name: string): Promise; delete(name: string, database: string): Promise; getSubscriptionState(subscriptionName: string): Promise; getSubscriptionState(subscriptionName: string, database: string): Promise; dispose(): void; dropSubscriptionWorker(worker: SubscriptionWorker, database?: string): Promise; dropConnection(name: string): Promise; dropConnection(name: string, database: string): Promise; enable(name: string): any; enable(name: string, database: string): any; disable(name: string): any; disable(name: string, database: string): any; update(options: SubscriptionUpdateOptions): Promise; update(options: SubscriptionUpdateOptions, database: string): Promise; }