package dev.sonpx.loyalty.mcp.tool.request;

import com.fasterxml.jackson.annotation.JsonPropertyDescription;

public record CampaignSearchRequest(
    @JsonPropertyDescription("Search by Campaign ID (partial or exact match). Leave null if not filtering by ID.")
    String campaignId,
    
    @JsonPropertyDescription("Search by Owner Name/Department (partial or exact match). Leave null if not filtering by owner.")
    String ownerName,
    
    @JsonPropertyDescription("Search by Campaign Name (partial or exact match). Leave null if not filtering by name.")
    String name,
    
    @JsonPropertyDescription("Search by Campaign Description (partial or exact match). Leave null if not filtering by description.")
    String description,
    
    @JsonPropertyDescription("Search by Campaign Type (exact match, e.g. POINT, VOUCHER). Leave null if not filtering by type.")
    String campaignType
) {}
