Variable ProposalSchemaConst
ProposalSchema: ZodObject<
{
proposal_id: ZodString;
name: ZodString;
description: ZodOptional<ZodString>;
allocations: ZodArray<
ZodObject<
{
product_id: ZodString;
allocation_percentage: ZodNumber;
pricing_option_id: ZodOptional<ZodString>;
rationale: ZodOptional<ZodString>;
sequence: ZodOptional<ZodNumber>;
tags: ZodOptional<ZodArray<ZodString>>;
start_time: ZodOptional<ZodISODateTime>;
end_time: ZodOptional<ZodISODateTime>;
daypart_targets: ZodOptional<
ZodArray<
ZodObject<
{
days: ZodArray<ZodUnion<(...)>>;
start_hour: ZodNumber;
end_hour: ZodNumber;
label: ZodOptional<ZodString>;
},
$loose,
>,
>,
>;
forecast: ZodOptional<
ZodObject<
{
points: ZodArray<
ZodObject<{ label: ...; budget: ...; metrics: ... }, $loose>,
>;
forecast_range_unit: ZodOptional<
ZodUnion<
readonly [
(...),
(...),
(...),
(...),
(...),
(...),
(...),
(...),
],
>,
>;
method: ZodUnion<
readonly [
ZodLiteral<(...)>,
ZodLiteral<(...)>,
ZodLiteral<(...)>,
],
>;
currency: ZodString;
demographic_system: ZodOptional<
ZodUnion<readonly [(...), (...), (...), (...), (...), (...)]>,
>;
demographic: ZodOptional<ZodString>;
measurement_source: ZodOptional<ZodString>;
reach_unit: ZodOptional<
ZodUnion<readonly [(...), (...), (...), (...), (...), (...)]>,
>;
generated_at: ZodOptional<ZodISODateTime>;
valid_until: ZodOptional<ZodISODateTime>;
ext: ZodOptional<ZodObject<{}, $loose>>;
},
$loose,
>,
>;
ext: ZodOptional<ZodObject<{}, $loose>>;
},
$loose,
>,
>;
proposal_status: ZodOptional<
ZodUnion<readonly [ZodLiteral<"draft">, ZodLiteral<"committed">]>,
>;
expires_at: ZodOptional<ZodISODateTime>;
insertion_order: ZodOptional<
ZodObject<
{
io_id: ZodString;
terms: ZodOptional<
ZodObject<
{
advertiser: ZodOptional<ZodString>;
publisher: ZodOptional<ZodString>;
total_budget: ZodOptional<
ZodObject<{ amount: ...; currency: ... }, $loose>,
>;
flight_start: ZodOptional<ZodISODateTime>;
flight_end: ZodOptional<ZodISODateTime>;
payment_terms: ZodOptional<
ZodUnion<readonly [(...), (...), (...), (...), (...)]>,
>;
},
$loose,
>,
>;
terms_url: ZodOptional<ZodString>;
signing_url: ZodOptional<ZodString>;
requires_signature: ZodBoolean;
},
$loose,
>,
>;
total_budget_guidance: ZodOptional<
ZodObject<
{
min: ZodOptional<ZodNumber>;
recommended: ZodOptional<ZodNumber>;
max: ZodOptional<ZodNumber>;
currency: ZodOptional<ZodString>;
},
$loose,
>,
>;
brief_alignment: ZodOptional<ZodString>;
forecast: ZodOptional<
ZodObject<
{
points: ZodArray<
ZodObject<
{
label: ZodOptional<ZodString>;
budget: ZodOptional<ZodNumber>;
metrics: ZodIntersection<
ZodRecord<ZodString, ZodObject<(...), (...)>>,
ZodObject<
{
audience_size: ...;
reach: ...;
frequency: ...;
impressions: ...;
clicks: ...;
spend: ...;
views: ...;
completed_views: ...;
grps: ...;
engagements: ...;
follows: ...;
saves: ...;
profile_visits: ...;
measured_impressions: ...;
downloads: ...;
plays: ...;
},
$loose,
>,
>;
},
$loose,
>,
>;
forecast_range_unit: ZodOptional<
ZodUnion<
readonly [
ZodLiteral<"spend">,
ZodLiteral<"availability">,
ZodLiteral<"reach_freq">,
ZodLiteral<"weekly">,
ZodLiteral<"daily">,
ZodLiteral<"clicks">,
ZodLiteral<"conversions">,
ZodLiteral<"package">,
],
>,
>;
method: ZodUnion<
readonly [
ZodLiteral<"estimate">,
ZodLiteral<"modeled">,
ZodLiteral<"guaranteed">,
],
>;
currency: ZodString;
demographic_system: ZodOptional<
ZodUnion<
readonly [
ZodLiteral<"nielsen">,
ZodLiteral<"barb">,
ZodLiteral<"agf">,
ZodLiteral<"oztam">,
ZodLiteral<"mediametrie">,
ZodLiteral<"custom">,
],
>,
>;
demographic: ZodOptional<ZodString>;
measurement_source: ZodOptional<ZodString>;
reach_unit: ZodOptional<
ZodUnion<
readonly [
ZodLiteral<"individuals">,
ZodLiteral<"households">,
ZodLiteral<"devices">,
ZodLiteral<"accounts">,
ZodLiteral<"cookies">,
ZodLiteral<"custom">,
],
>,
>;
generated_at: ZodOptional<ZodISODateTime>;
valid_until: ZodOptional<ZodISODateTime>;
ext: ZodOptional<ZodObject<{}, $loose>>;
},
$loose,
>,
>;
ext: ZodOptional<ZodObject<{}, $loose>>;
},
$loose,
> = ...