import { type Optional } from '@ephox/katamari'; import { type SugarElement } from '@ephox/sugar'; import type { DebuggerLogger } from '../debugging/Debugging'; import type { ElementAndHandler, UidAndHandler } from './EventRegistry'; import { type EventFormat } from './SimulatedEvent'; type LookupEvent = (eventName: string, target: SugarElement) => Optional; export interface TriggerAdt { fold: (stopped: () => T, resume: (elem: SugarElement) => T, complete: () => T) => T; match: (branches: { stopped: () => T; resume: (elem: SugarElement) => T; complete: () => T; }) => T; log: (label: string) => void; } declare const triggerHandler: (lookup: LookupEvent, eventType: string, rawEvent: T, target: SugarElement, logger: DebuggerLogger) => TriggerAdt; declare const broadcast: (listeners: UidAndHandler[], rawEvent: EventFormat, _logger?: DebuggerLogger) => boolean; declare const triggerUntilStopped: (lookup: LookupEvent, eventType: string, rawEvent: EventFormat, logger: DebuggerLogger) => boolean; declare const triggerOnUntilStopped: (lookup: LookupEvent, eventType: string, rawEvent: EventFormat, rawTarget: SugarElement, logger: DebuggerLogger) => boolean; export { triggerHandler, triggerUntilStopped, triggerOnUntilStopped, broadcast }; //# sourceMappingURL=Triggers.d.ts.map