import { EventListener, EventPayloadListener, Listener, UnsubscribeFn } from "./types";
/** Subscribe to events and payloads. */
export declare class ReadonlyAbonEvent<E = undefined, P = undefined> {
    constructor();
    subscribe(listener: EventListener<E, P>): UnsubscribeFn;
    subscribe(event: E, listener: EventPayloadListener<P>): UnsubscribeFn;
    subscribe(event: E, payload: P, listener: Listener): UnsubscribeFn;
    use(listener: EventListener<E, P>, deps?: readonly any[]): UnsubscribeFn;
    use(event: E, listener: EventPayloadListener<P>, deps?: readonly any[]): UnsubscribeFn;
    use(event: E, payload: P, listener: Listener, deps?: readonly any[]): UnsubscribeFn;
}
