import { CodeConfig, Voucher, VoucherClaim } from '../marketing.interface'; export declare function claimCurrentUse(claim: VoucherClaim): number; export declare function claimMaxUse(claim: VoucherClaim): number; export declare function voucherMaxUse(voucher: Voucher): number; export declare function claimCooldown(claim: VoucherClaim): any; export declare function claimMaxUseReached(claim: VoucherClaim): boolean; export declare function claimInCooldown(claim: VoucherClaim): boolean; export declare function claimInUsableTime(currentTime: Date, claim: VoucherClaim): any; export declare function maxCombinationReached(codeConfig: CodeConfig, currenClaim: number, quantity: number): boolean; export interface SendVoucherDto { memberIds: string[]; } /** * Generate a unique code base on given config * @param config * @param sequenceOffset Index of the unique code based on given charset and config * @returns */ export declare function generateCode(config: CodeConfig, sequenceOffset?: number): string; export declare function bulkGenerateCode(config: CodeConfig, count: number, codeMap?: {}, sequenceOffset?: number): string[]; /** * Get the number of maximum possible combination * @param config * @returns */ export declare function maxCombinationsCount(config: CodeConfig): number;