import { Event, Store, Unit, UnitTargetable } from 'effector';
type EventAsReturnType<Payload> = any extends Payload ? Event<Payload> : never;
export declare function throttle<T>(source: Unit<T>, timeout: number | Store<number>): EventAsReturnType<T>;
export declare function throttle<T>(_: {
    source: Unit<T>;
    timeout: number | Store<number>;
    name?: string;
}): EventAsReturnType<T>;
export declare function throttle<T, Target extends UnitTargetable<T>>(_: {
    source: Unit<T>;
    timeout: number | Store<number>;
    target: Target;
    name?: string;
}): Target;
export {};
