import { StreamEvent, IStreamModel, StreamCallback, StreamHandler, StreamHandlerCallbacks } from '../util/types'; import { PermissionModel } from './model.permission'; export declare class StreamModel extends PermissionModel implements IStreamModel { #private; static streamCallback: StreamHandlerCallbacks; static onCreate(this: new () => T, callback: StreamHandler): Promise; static onChange(this: new () => T, callback: StreamHandler): Promise; static onDelete(this: new () => T, callback: StreamHandler): Promise; static cancelCallback(all: StreamHandlerCallbacks, type: 'create' | 'update' | 'delete', callback: StreamHandler): Promise; static cancelOnCreate(this: new () => T, callback: StreamCallback): Promise; static cancelOnChange(this: new () => T, callback: StreamCallback): Promise; static cancelOnDelete(this: new () => T, callback: StreamCallback): Promise; onEvent(callback: StreamCallback): Promise; onChange(callback: StreamCallback): Promise; onDelete(callback: StreamCallback): Promise; onCreate(callback: StreamCallback): Promise; cancelOnEvent(callback: StreamCallback): Promise; cancelOnChange(callback: StreamCallback): Promise; cancelOnDelete(callback: StreamCallback): Promise; cancelOnCreate(callback: StreamCallback): Promise; clearAllCallbacks(): Promise; handleStream(event: StreamEvent): Promise; }