import type { Task } from '@redux-saga/types'; import { Action } from './redux'; import { ExecuteParams, BaseComponentOptions, ExecuteExtendedOptions, SDKWorker, SDKWorkerDefinition, SessionAuthStatus, SDKWorkerHooks, Authorization } from './utils/interfaces'; import { EventEmitter } from './utils/EventEmitter'; import { SDKState } from './redux/interfaces'; import { OnlyStateProperties, EmitterContract, BaseComponentContract } from './types'; export declare const SW_SYMBOL: unique symbol; export declare class BaseComponent> implements EmitterContract, BaseComponentContract { options: BaseComponentOptions; /** @internal */ __sw_symbol: symbol; /** @internal */ private readonly uuid; /** @internal */ get __uuid(): string; private _customSagaTriggers; private _destroyer?; private eventEmitter; /** * List of running Tasks to be cancelled on `destroy`. */ private _runningWorkers; get logger(): import("./utils/interfaces").InternalSDKLogger; /** * Map of Sagas that will be attached to the Store to * handle events or perform side-effects. This Map will * behave as a queue and will be emptied once the workers * have been attached. See `this.attachWorkers` for * details. */ protected _workers: Map; }>; constructor(options: BaseComponentOptions); /** @internal */ set destroyer(d: () => void); /** @internal */ get store(): { runSaga: (saga: import("@redux-saga/types").Saga, args: { instance: T; runSaga: any; }) => Task; channels: import("./utils/interfaces").InternalChannels; instanceMap: import("./utils/interfaces").InstanceMap; sessionEmitter: EventEmitter; dispatch: import("redux").Dispatch; getState(): any; subscribe(listener: () => void): import("redux").Unsubscribe; replaceReducer(nextReducer: import("redux").Reducer): void; [Symbol.observable](): import("redux").Observable; }; /** @internal */ get instanceMap(): import("./utils/interfaces").InstanceMap; /** @internal */ get emitter(): EventEmitter; /** @internal */ get sessionEmitter(): EventEmitter; /** @internal */ get session(): EventEmitter; on>(event: T, fn: EventEmitter.EventListener): EventEmitter; once>(event: T, fn: EventEmitter.EventListener): EventEmitter; off>(event: T, fn?: EventEmitter.EventListener): EventEmitter; removeAllListeners>(event?: T): EventEmitter; /** @internal */ eventNames(): EventEmitter.EventNames[]; /** @internal */ sessionEventNames(): ("session.unknown" | "session.idle" | "session.reconnecting" | "session.connected" | "session.disconnecting" | "session.disconnected" | "session.auth_error" | "session.expiring")[]; protected getSubscriptions(): EventEmitter.EventNames[]; /** @internal */ emit>(event: E, ...args: EventEmitter.EventArgs): boolean; /** @internal */ listenerCount>(event: T): number; destroy(): void; /** @internal */ execute>({ method, params }: ExecuteParams, { transformParams, transformResolve, transformReject, }?: ExecuteExtendedOptions): Promise; /** @internal */ triggerCustomSaga(action: Action): Promise; /** @internal */ settleCustomSagaTrigger({ dispatchId, payload, kind, }: { dispatchId: string; payload?: T; kind: 'resolve' | 'reject'; }): void; /** @internal */ select(selectorFn: (state: SDKState) => T): T; /** @internal */ getStateProperty(param: keyof OnlyStateProperties): any; /** @internal */ protected get _sessionAuthStatus(): SessionAuthStatus; /** @internal */ protected get _sessionAuthorization(): Authorization | undefined; /** @internal */ protected _waitUntilSessionAuthorized(): Promise; /** @internal */ runWorker(name: string, def: SDKWorkerDefinition): Task; cancelWorker(workerTask: Task): void; private _setWorker; private _attachWorker; private detachWorkers; } //# sourceMappingURL=BaseComponent.d.ts.map