import { RedeemProvider, RedeemProviderType } from '../../enums'; import { IScrimLangRequirementGroup } from '../../entities'; export interface IRedeemOptionDTO { name: string; enabled: boolean; provider: RedeemProvider; type: RedeemProviderType; title: string; description: string; publicConfig: any; privateConfig: any; internalConfig: any; limitAmount: number; purchaseRequirements: IScrimLangRequirementGroup[]; isShownBlocked: boolean; blockedTitle: string; isShownWhenLimitExceeded: boolean; limitExceededMessage: string; onCompletionRedirect?: string; order?: number; group: string; } export type IAdminRedeemOptionDTO = Omit; export interface IAdminRedeemOptionDetailsDTO extends IAdminRedeemOptionDTO { timesUsed: number; } export type IAdminRedeemOptionCreateDTO = Omit; export type IAdminRedeemOptionUpdateDTO = Omit; export interface IPublicRedeemOptionDTO { name: string; enabled: boolean; type: RedeemProviderType; title: string; description: string; publicConfig: any; purchaseRequirements: IScrimLangRequirementGroup[]; isShownBlocked: boolean; blockedTitle: string; isShownWhenLimitExceeded: boolean; limitExceededMessage: string; onCompletionRedirect?: string; order: number; group: string; timesLeft: number; }