import { Event } from "./event";
import { ExternalSyncEventTargetListeners } from "./event-target-listeners";
export interface AbortSignal extends ExternalSyncEventTargetListeners {
    aborted: boolean;
    addEventListener(type: "abort", callback: Function): void;
    addEventListener(type: string, callback: Function): void;
}
export interface AbortController {
    signal: AbortSignal;
    abort(): void;
}
export interface SignalEvent<Name extends string | symbol = string> extends Event<Name> {
    signal: AbortSignal;
}
export declare function isAbortSignal(value: unknown): value is AbortSignal;
export declare function isAbortController(value: unknown): value is AbortController;
export declare function isSignalEvent(value: object): value is SignalEvent;
export declare function isSignalHandled(event: Event, error: unknown): boolean;
