import { SingleSelectIdText, IdText } from "@annalib/anna-design-components-lib"; export interface GeneralRulesSelectedData { maxSpotsStripPerHalfHrDaily: number; maxSpotsStripPerHalfHrWeekly: number; maxSpotsStripPerHalfHrToOneHrDaily: number; maxSpotsStripPerHalfHrToOneHrWeekly: number; maxSpotsStripPerOneHrToTwoHrDaily: number; maxSpotsStripPerOneHrToTwoHrWeekly: number; maxSpotsStripPerTwoHrPlusDaily: number; maxSpotsStripPerTwoHrPlusWeekly: number; maxSpotsOtoPerHalfHrDaily: number; maxSpotsOtoPerHalfHrToOneHrDaily: number; maxSpotsOtoPerOneHrToTwoHrDaily: number; maxSpotsOtoPerTwoHrPlusDaily: number; } export interface MakeGoodRulesSelectedData { allowedInventory: SingleSelectIdText; timeWindow: SingleSelectIdText; primeTime: SingleSelectIdText; sports: SingleSelectIdText; allowWeekendsOnWeekdays: boolean; allowWeekdaysOnWeekends: boolean; allowSportsPermittedAlternative: boolean; programThresholdAllowed: boolean; } export interface AduRulesSelectedData { maximumCap: number; timeWindow: SingleSelectIdText; programThresholdAllowed: boolean; daypartGroups: DaypartGroupsList[]; } export declare class MaxSpots { perHalfHour: number; halfHourToOneHour: number; oneHourToTwoHour: number; twoHourPlus: number; constructor(data: any); } export declare class GeneralRules { minSeparationTime: string; maxSpotsAllowedInOto: MaxSpots; maxSpotsAllowedInStripeDaily: MaxSpots; maxSpotsAllowedInStripeWeekly: MaxSpots; constructor(data: any); } export declare class MakegoodRules { allowedInventory: SingleSelectIdText[]; timeWindow: SingleSelectIdText[]; sportsPermittedAlternative: SingleSelectIdText[]; primeTimePermittedAlternative: SingleSelectIdText[]; allowWeekendsOnWeekdays: boolean; allowWeekdaysOnWeekends: boolean; allowSportsPermittedAlternative: boolean; programThresholdAllowed: boolean; constructor(data: any); } export declare class AduRules { programThresholdAllowed: boolean; maxPercentageThreshold: number; timeWindow: SingleSelectIdText[]; daypartGroups: DaypartGroups; constructor(data: any); } export declare class DaypartGroups { daypartGroupList: DaypartGroupsList[]; allDaypartGroups: IdText[]; constructor(data: any); } export declare class DaypartGroupsList { groupName: string; dayparts: IdText[]; isDuplicateGroupName: boolean; constructor(groupName: string, daypartList: any); } export interface BusinessRulesForPayload { GeneralBusinessRules: GeneralBusinessRules; MakeGoodBusinessRules: MakeGoodBusinessRules; AduBusinessRules: AduBusinessRules; } export interface GeneralBusinessRules { MinimumSeparationTime: string; MaxSpotsAllowedInOTO: MaxSpotsPayload; MaxSpotsAllowedInStripeDaily: MaxSpotsPayload; MaxSpotsAllowedInStripeWeekly: MaxSpotsPayload; } export interface MaxSpotsPayload { PerHalfHour: number; HalfHourToOneHour: number; OneHourToTwoHours: number; TwoHoursPlus: number; } export interface MakeGoodBusinessRules { AllowedInventory: string; TimeWindow: string; AllowWeekdaysOnWeekends: boolean; AllowWeekendsOnWeekdays: boolean; IsSportsPermittedAlternativeEnabled: boolean; SportsPermittedAlternative: string; PrimeTimePermittedAlternative: string; ProgramThresholdAllowed: boolean; } export interface AduBusinessRules { MaxPercentageThreshold: number; TimeWindow: string; ProgramThresholdAllowed: boolean; DaypartGroups: DaypartGroupPayload[]; } export interface DaypartGroupPayload { GroupName: string; Dayparts: string[]; }