export interface EventTargetState {
    eventTarget: Window | EventTarget;
}
export declare const initialEventTargetState: EventTargetState;
export interface EventTargetContextState {
    eventTargetState: EventTargetState;
    eventTargetDispatch: React.Dispatch<EventTargetAction>;
}
export interface EventTargetAction {
    payload: EventTargetActionPayload;
}
type EventTargetActionPayload = SetEventTargetPayload;
export declare enum EventTargetActions {
    SET_EVENT_TARGET = "SET_EVENT_TARGET"
}
export interface SetEventTargetPayload {
    type: EventTargetActions.SET_EVENT_TARGET;
    eventTarget: Window | EventTarget;
}
export declare const EventTargetContext: import("react").Context<EventTargetContextState>;
export type Reducer<S, A> = (prevState: S, action: A) => S;
export declare const eventTargetReducer: Reducer<EventTargetState, EventTargetAction>;
export declare const useEventTargetState: () => readonly [EventTargetState, import("react").Dispatch<EventTargetAction>];
export {};
