/**
 * Event payload map keyed by event name.
 */
export type EventMap = object;
/**
 * Event handler for one payload shape.
 */
export type EventHandler<TEvent> = (event: TEvent) => void;
/**
 * Tiny typed emitter used for internal package coordination.
 */
export interface EventEmitter<TEvents extends EventMap> {
    on: <TKey extends keyof TEvents>(type: TKey, handler: EventHandler<TEvents[TKey]>) => void;
    off: <TKey extends keyof TEvents>(type: TKey, handler: EventHandler<TEvents[TKey]>) => void;
    emit: <TKey extends keyof TEvents>(type: TKey, event: TEvents[TKey]) => void;
    clear: () => void;
}
/**
 * Create lightweight event emitter without external runtime dependency.
 */
export declare function createEventEmitter<TEvents extends EventMap>(): EventEmitter<TEvents>;
