@itwin/appui-abstract
Version:
iTwin.js UI abstractions
50 lines • 2.17 kB
TypeScript
/** @packageDocumentation
* @module Utilities
*/
import { BeUiEvent } from "@itwin/core-bentley";
/** UiSync Event arguments. Contains a set of lower case event Ids.
* @public
* @deprecated in 4.2.0 - might be removed in next major version. Please use [[UiSyncEventArgs]] in @itwin/appui-react
*/
export interface UiSyncEventArgs {
eventIds: Set<string>;
}
/** UiSync Event class.
* @public
* @deprecated in 4.2.0 - might be removed in next major version. Use [[UiSyncEvent]] from @itwin/appui-react.
*/
export declare class UiSyncEvent extends BeUiEvent<UiSyncEventArgs> {
}
/** This class is used to send eventIds to interested UI components so the component can determine if it needs
* to refresh its display by calling setState on itself.
* @public
* @deprecated in 4.2.0 - might be removed in next major version. Use [[SyncUiEventDispatcher]] from @itwin/appui-react.
*/
export declare class UiEventDispatcher {
private _syncEventTimerId;
private _eventIds;
private _eventIdAdded;
private _uiSyncEvent;
private _timeoutPeriod;
private _secondaryTimeoutPeriod;
constructor();
/** @internal - used for testing only */
setTimeoutPeriod(period: number): void;
/** The current timeout period */
get timeoutPeriod(): number;
/** Return set of event ids that will be sent to listeners/. */
get syncEventIds(): Set<string>;
/** Return UiSyncEvent so callers can register an event callback. */
get onSyncUiEvent(): UiSyncEvent;
/** Immediately trigger sync event processing. */
dispatchImmediateSyncUiEvent(eventId: string): void;
/** Save eventId in Set for processing. */
dispatchSyncUiEvent(eventId: string): void;
/** Save multiple eventIds in Set for processing. */
dispatchSyncUiEvents(eventIds: string[]): void;
/** Trigger registered event processing when timer has expired and no addition eventId are added. */
checkForAdditionalIds(): void;
/** Checks to see if an eventId of interest is contained in the set of eventIds */
hasEventOfInterest(eventIds: Set<string>, idsOfInterest: string[]): boolean;
}
//# sourceMappingURL=UiEventDispatcher.d.ts.map