package kz.konturai.parser.model;

import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import org.springframework.data.mongodb.core.mapping.Field;

import java.util.List;

/**
 * Ad set definition within a targeting campaign.
 */
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class TargetingAdSet {

    @Field("ad_set_id")
    private String adSetId; // UUID

    @Field("name")
    private String name;

    @Field("platform")
    private String platform;

    @Field("budget")
    private Double budget;

    @Field("bid_strategy")
    private String bidStrategy; // "LOWEST_COST", "TARGET_COST", "BID_CAP"

    @Field("optimization_goal")
    private String optimizationGoal;

    @Field("placements")
    private List<String> placements; // "FEED", "STORIES", "REELS", "EXPLORE"

    @Field("ads")
    private List<TargetingAd> ads;

    @Field("status")
    private String status;
}
