import type { CropperChangeOrigin } from './cropChangePolicy';
export type SystemCropperOrigin = Exclude<CropperChangeOrigin, 'user-input'>;
export type SystemOriginConfig = {
    burst: number;
    expiryMs: number;
    clearIfUnusedAfterAction: boolean;
};
export type SystemOriginTracker = {
    reset: () => void;
    withSystemOrigin: <T>(origin: SystemCropperOrigin, action: () => T) => T;
    consumeOrigin: () => CropperChangeOrigin;
};
export declare function createSystemOriginTracker(options: {
    config: Record<SystemCropperOrigin, SystemOriginConfig>;
    nowMs?: () => number;
}): SystemOriginTracker;
