import { IdempotencyRepository } from './idempotency.repository';
import { AppLoggerService } from 'src/common/services/logger.service';
export declare class IdempotencyService {
    private readonly idempotencyRepository;
    private readonly logger;
    constructor(idempotencyRepository: IdempotencyRepository, logger: AppLoggerService);
    run<T>(idempotencyKey: string | undefined | null, endpoint: string, payload: unknown, userId: number | null, executor: () => Promise<T>): Promise<T>;
    private claim;
    private hashPayload;
}
