import { type Promisable } from '@xylabs/promise';
export interface ForgetTimeoutConfig {
    cancel: () => void;
    delay: number;
}
export declare const ForgetPromise: {
    readonly active: boolean;
    activeForgets: number;
    awaitInactive(interval?: number, timeout?: number): Promise<number>;
    /**
     * Used to explicitly launch an async function (or Promise) with awaiting it
     * @param promise The promise to forget
     * @param config Configuration of forget settings
     */
    forget<T>(promise: Promisable<T>, onComplete?: (result: [T | undefined, Error | undefined]) => void, config?: ForgetTimeoutConfig): void;
};
export declare const forget: <T>(promise: Promisable<T>, onComplete?: (result: [T | undefined, Error | undefined]) => void, timeout?: ForgetTimeoutConfig) => void;
//# sourceMappingURL=forget.d.ts.map