import type { AsyncVoid } from '../../types/internal';
type Return<PromiseValue, ResolveValue, RejectValue> = Readonly<{
    clearRejectTimeout: () => void;
    promiseWithTimeout: Promise<PromiseValue>;
    reject: (error: RejectValue) => void;
    resolve: (value: ResolveValue) => void;
    setRejectTimeoutFunction: (rejectTimeoutFunction: () => AsyncVoid) => void;
}>;
/**
 * Get typed promise with his resolve and reject functions,
 * and with setted timeout.
 */
export declare const getPromiseWithResolveAndReject: <PromiseValue = unknown, ResolveValue = PromiseValue, RejectValue = unknown>(timeoutInMs: number) => Return<PromiseValue, ResolveValue, RejectValue>;
export {};
