import * as z from "zod/mini"; import { type ResolvedAttentionPolicyConfig } from "./attention-policy.js"; import { type DisplayAttentionPolicy } from "./display-attention-policy.js"; /** Core advertises this on flow-display sync before the server may expose a * runtime broadcast whose named budget requires assignment-backed admission. * Governing contract: docs/specs/2026-06-21-attention-budgeting-steelthread.md */ export declare const FLOW_DISPLAY_NAMED_BUDGET_CLAIM_CAPABILITY: "gx.flow-display.named-budget-claim.v1"; /** * Core advertises this before the server may expose customer-occurrence * runtime broadcasts in the flow-display manifest. */ export declare const FLOW_DISPLAY_CUSTOMER_OCCURRENCE_TRIGGER_CAPABILITY: "gx.flow-display.customer-occurrence-trigger.v1"; export declare const runtimeDisplayEligibilitySchema: z.ZodMiniObject<{ hostActionRequirementsVersion: z.ZodMiniOptional>; requiredCapabilities: z.ZodMiniDefault>>; requiredPage: z.ZodMiniOptional; }, z.core.$strip>>; requiredHostActions: z.ZodMiniOptional; version: z.ZodMiniNumber; }, z.core.$strict>, z.ZodMiniObject<{ key: z.ZodMiniString; contractVersion: z.ZodMiniString; }, z.core.$strict>]>>>; requiredHostActionSettlement: z.ZodMiniOptional; }, z.core.$strip>, z.ZodMiniObject<{ kind: z.ZodMiniLiteral<"close">; }, z.core.$strip>, z.ZodMiniObject<{ kind: z.ZodMiniLiteral<"link">; transport: z.ZodMiniEnum<{ browser_http: "browser_http"; unsupported: "unsupported"; }>; }, z.core.$strip>], "kind">>; }, z.core.$strip>; export declare const runtimeDisplayTriggerSchema: z.ZodMiniDiscriminatedUnion<[z.ZodMiniObject<{ kind: z.ZodMiniLiteral<"immediate">; }, z.core.$strip>, z.ZodMiniObject<{ kind: z.ZodMiniLiteral<"exit_intent">; }, z.core.$strip>, z.ZodMiniObject<{ event: z.ZodMiniString; kind: z.ZodMiniLiteral<"customer_occurrence">; type: z.ZodMiniEnum<{ page: "page"; screen: "screen"; track: "track"; }>; }, z.core.$strip>], "kind">; export declare const runtimeDisplayAttentionPolicySchema: z.ZodMiniObject<{ priority: z.ZodMiniOptional>; attentionMode: z.ZodMiniOptional>; cooldown: z.ZodMiniOptional; afterDisplayMs: z.ZodMiniNumber; }, z.core.$strip>, z.ZodMiniNull]>>; }, z.core.$strip>; export declare const runtimeDisplayBroadcastOpportunitySchema: z.ZodMiniObject<{ opportunityId: z.ZodMiniString; flowId: z.ZodMiniString; flowVersionId: z.ZodMiniString; source: z.ZodMiniObject<{ kind: z.ZodMiniLiteral<"runtime_broadcast">; automationId: z.ZodMiniOptional>; automationVersionId: z.ZodMiniOptional>; }, z.core.$strip>; runtimeEligibility: z.ZodMiniObject<{ hostActionRequirementsVersion: z.ZodMiniOptional>; requiredCapabilities: z.ZodMiniDefault>>; requiredPage: z.ZodMiniOptional; }, z.core.$strip>>; requiredHostActions: z.ZodMiniOptional; version: z.ZodMiniNumber; }, z.core.$strict>, z.ZodMiniObject<{ key: z.ZodMiniString; contractVersion: z.ZodMiniString; }, z.core.$strict>]>>>; requiredHostActionSettlement: z.ZodMiniOptional; }, z.core.$strip>, z.ZodMiniObject<{ kind: z.ZodMiniLiteral<"close">; }, z.core.$strip>, z.ZodMiniObject<{ kind: z.ZodMiniLiteral<"link">; transport: z.ZodMiniEnum<{ browser_http: "browser_http"; unsupported: "unsupported"; }>; }, z.core.$strip>], "kind">>; }, z.core.$strip>; runtimeTrigger: z.ZodMiniDefault; }, z.core.$strip>, z.ZodMiniObject<{ kind: z.ZodMiniLiteral<"exit_intent">; }, z.core.$strip>, z.ZodMiniObject<{ event: z.ZodMiniString; kind: z.ZodMiniLiteral<"customer_occurrence">; type: z.ZodMiniEnum<{ page: "page"; screen: "screen"; track: "track"; }>; }, z.core.$strip>], "kind">>; attentionPolicy: z.ZodMiniOptional>; attentionMode: z.ZodMiniOptional>; cooldown: z.ZodMiniOptional; afterDisplayMs: z.ZodMiniNumber; }, z.core.$strip>, z.ZodMiniNull]>>; }, z.core.$strip>>; claimRequired: z.ZodMiniOptional>; }, z.core.$strip>; export declare const runtimeDisplayBroadcastsSchema: z.ZodMiniObject<{ version: z.ZodMiniString; opportunities: z.ZodMiniArray; flowId: z.ZodMiniString; flowVersionId: z.ZodMiniString; source: z.ZodMiniObject<{ kind: z.ZodMiniLiteral<"runtime_broadcast">; automationId: z.ZodMiniOptional>; automationVersionId: z.ZodMiniOptional>; }, z.core.$strip>; runtimeEligibility: z.ZodMiniObject<{ hostActionRequirementsVersion: z.ZodMiniOptional>; requiredCapabilities: z.ZodMiniDefault>>; requiredPage: z.ZodMiniOptional; }, z.core.$strip>>; requiredHostActions: z.ZodMiniOptional; version: z.ZodMiniNumber; }, z.core.$strict>, z.ZodMiniObject<{ key: z.ZodMiniString; contractVersion: z.ZodMiniString; }, z.core.$strict>]>>>; requiredHostActionSettlement: z.ZodMiniOptional; }, z.core.$strip>, z.ZodMiniObject<{ kind: z.ZodMiniLiteral<"close">; }, z.core.$strip>, z.ZodMiniObject<{ kind: z.ZodMiniLiteral<"link">; transport: z.ZodMiniEnum<{ browser_http: "browser_http"; unsupported: "unsupported"; }>; }, z.core.$strip>], "kind">>; }, z.core.$strip>; runtimeTrigger: z.ZodMiniDefault; }, z.core.$strip>, z.ZodMiniObject<{ kind: z.ZodMiniLiteral<"exit_intent">; }, z.core.$strip>, z.ZodMiniObject<{ event: z.ZodMiniString; kind: z.ZodMiniLiteral<"customer_occurrence">; type: z.ZodMiniEnum<{ page: "page"; screen: "screen"; track: "track"; }>; }, z.core.$strip>], "kind">>; attentionPolicy: z.ZodMiniOptional>; attentionMode: z.ZodMiniOptional>; cooldown: z.ZodMiniOptional; afterDisplayMs: z.ZodMiniNumber; }, z.core.$strip>, z.ZodMiniNull]>>; }, z.core.$strip>>; claimRequired: z.ZodMiniOptional>; }, z.core.$strip>>; }, z.core.$strip>; export declare const flowDisplaySyncRequestSchema: z.ZodMiniObject<{ identities: z.ZodMiniDefault, z.ZodMiniTransform<"anonymousId" | "context.device.advertisingId" | "context.device.id" | "context.device.token" | "traits.email" | "traits.phone" | "userId", string>>, z.ZodMiniType<`externalId.users.none.${string}`, `externalId.users.none.${string}`, z.core.$ZodTypeInternals<`externalId.users.none.${string}`, `externalId.users.none.${string}`>>]>; value: z.ZodMiniString; }, z.core.$strip>>>; context: z.ZodMiniOptional; target: z.ZodMiniOptional>; value: z.ZodMiniType>; variant: z.ZodMiniOptional>; origin: z.ZodMiniOptional>; provider: z.ZodMiniOptional; project: z.ZodMiniOptional>; environment: z.ZodMiniOptional>; }, z.core.$strip>>; status: z.ZodMiniOptional>; reason: z.ZodMiniOptional>; evaluatedAt: z.ZodMiniOptional>; }, z.core.$strip>>>; capabilities: z.ZodMiniOptional; source: z.ZodMiniOptional>; provider: z.ZodMiniOptional; project: z.ZodMiniOptional>; environment: z.ZodMiniOptional>; }, z.core.$strip>>; }, z.core.$strip>>>; page: z.ZodMiniOptional>; referrer: z.ZodMiniOptional>; search: z.ZodMiniOptional>; }, z.core.$strip>>; }, z.core.$strip>>; holdOwnerKey: z.ZodMiniString; protocolCapabilities: z.ZodMiniOptional>>; at: z.ZodMiniOptional>; assignmentLimit: z.ZodMiniOptional>; knownBroadcastManifestVersion: z.ZodMiniOptional>; }, z.core.$strip>; export declare const flowDisplaySyncResponseSchema: z.ZodMiniObject<{ fetchedAt: z.ZodMiniString; attentionPolicy: z.ZodMiniOptional; source: z.ZodMiniEnum<{ custom: "custom"; default: "default"; }>; recentFlowCooldownMs: z.ZodMiniNumber; exclusiveSurfaceStrategy: z.ZodMiniEnum<{ queue: "queue"; }>; blockedBroadcastStrategy: z.ZodMiniEnum<{ queue: "queue"; }>; }, z.core.$strict>>; attentionPolicyV2: z.ZodMiniOptional; source: z.ZodMiniEnum<{ custom: "custom"; default: "default"; }>; recentFlowCooldownMs: z.ZodMiniNumber; exclusiveSurfaceStrategy: z.ZodMiniEnum<{ queue: "queue"; }>; blockedBroadcastStrategy: z.ZodMiniEnum<{ queue: "queue"; }>; recentInAppCooldownMs: z.ZodMiniDefault>; automaticInAppWeeklyLimit: z.ZodMiniOptional>; }, z.core.$loose>>; assignments: z.ZodMiniObject<{ claimed: z.ZodMiniArray; flowId: z.ZodMiniString; attentionPolicy: z.ZodMiniOptional>; attentionMode: z.ZodMiniOptional>; cooldown: z.ZodMiniOptional; afterDisplayMs: z.ZodMiniNumber; }, z.core.$strip>, z.ZodMiniNull]>>; }, z.core.$strip>>; holdGroupToken: z.ZodMiniOptional>; presentedFlowVersionId: z.ZodMiniOptional>; latestFlowVersionId: z.ZodMiniString; status: z.ZodMiniEnum<{ completed: "completed"; expired: "expired"; held: "held"; pending: "pending"; presented: "presented"; superseded: "superseded"; }>; assignedAt: z.ZodMiniString; expiresAt: z.ZodMiniOptional>; heldAt: z.ZodMiniOptional>; holdExpiresAt: z.ZodMiniOptional>; presentedAt: z.ZodMiniOptional>; completedAt: z.ZodMiniOptional>; expiredAt: z.ZodMiniOptional>; supersededAt: z.ZodMiniOptional>; }, z.core.$strip>>; }, z.core.$strip>; broadcasts: z.ZodMiniObject<{ version: z.ZodMiniString; opportunities: z.ZodMiniArray; flowId: z.ZodMiniString; flowVersionId: z.ZodMiniString; source: z.ZodMiniObject<{ kind: z.ZodMiniLiteral<"runtime_broadcast">; automationId: z.ZodMiniOptional>; automationVersionId: z.ZodMiniOptional>; }, z.core.$strip>; runtimeEligibility: z.ZodMiniObject<{ hostActionRequirementsVersion: z.ZodMiniOptional>; requiredCapabilities: z.ZodMiniDefault>>; requiredPage: z.ZodMiniOptional; }, z.core.$strip>>; requiredHostActions: z.ZodMiniOptional; version: z.ZodMiniNumber; }, z.core.$strict>, z.ZodMiniObject<{ key: z.ZodMiniString; contractVersion: z.ZodMiniString; }, z.core.$strict>]>>>; requiredHostActionSettlement: z.ZodMiniOptional; }, z.core.$strip>, z.ZodMiniObject<{ kind: z.ZodMiniLiteral<"close">; }, z.core.$strip>, z.ZodMiniObject<{ kind: z.ZodMiniLiteral<"link">; transport: z.ZodMiniEnum<{ browser_http: "browser_http"; unsupported: "unsupported"; }>; }, z.core.$strip>], "kind">>; }, z.core.$strip>; runtimeTrigger: z.ZodMiniDefault; }, z.core.$strip>, z.ZodMiniObject<{ kind: z.ZodMiniLiteral<"exit_intent">; }, z.core.$strip>, z.ZodMiniObject<{ event: z.ZodMiniString; kind: z.ZodMiniLiteral<"customer_occurrence">; type: z.ZodMiniEnum<{ page: "page"; screen: "screen"; track: "track"; }>; }, z.core.$strip>], "kind">>; attentionPolicy: z.ZodMiniOptional>; attentionMode: z.ZodMiniOptional>; cooldown: z.ZodMiniOptional; afterDisplayMs: z.ZodMiniNumber; }, z.core.$strip>, z.ZodMiniNull]>>; }, z.core.$strip>>; claimRequired: z.ZodMiniOptional>; }, z.core.$strip>>; }, z.core.$strip>; }, z.core.$strip>; export declare const flowDisplayClaimBroadcastRequestSchema: z.ZodMiniObject<{ automationId: z.ZodMiniString; automationVersionId: z.ZodMiniString; expectedFlowVersionId: z.ZodMiniOptional>; identities: z.ZodMiniDefault, z.ZodMiniTransform<"anonymousId" | "context.device.advertisingId" | "context.device.id" | "context.device.token" | "traits.email" | "traits.phone" | "userId", string>>, z.ZodMiniType<`externalId.users.none.${string}`, `externalId.users.none.${string}`, z.core.$ZodTypeInternals<`externalId.users.none.${string}`, `externalId.users.none.${string}`>>]>; value: z.ZodMiniString; }, z.core.$strip>>>; context: z.ZodMiniOptional; target: z.ZodMiniOptional>; value: z.ZodMiniType>; variant: z.ZodMiniOptional>; origin: z.ZodMiniOptional>; provider: z.ZodMiniOptional; project: z.ZodMiniOptional>; environment: z.ZodMiniOptional>; }, z.core.$strip>>; status: z.ZodMiniOptional>; reason: z.ZodMiniOptional>; evaluatedAt: z.ZodMiniOptional>; }, z.core.$strip>>>; capabilities: z.ZodMiniOptional; source: z.ZodMiniOptional>; provider: z.ZodMiniOptional; project: z.ZodMiniOptional>; environment: z.ZodMiniOptional>; }, z.core.$strip>>; }, z.core.$strip>>>; page: z.ZodMiniOptional>; referrer: z.ZodMiniOptional>; search: z.ZodMiniOptional>; }, z.core.$strip>>; }, z.core.$strip>>; holdOwnerKey: z.ZodMiniString; protocolCapabilities: z.ZodMiniOptional>>; }, z.core.$strip>; export declare const flowDisplayClaimedBroadcastAssignmentSchema: z.ZodMiniObject<{ flowAssignmentId: z.ZodMiniString; flowVersionId: z.ZodMiniString; status: z.ZodMiniEnum<{ completed: "completed"; expired: "expired"; held: "held"; pending: "pending"; presented: "presented"; superseded: "superseded"; }>; holdGroupToken: z.ZodMiniUnion, z.ZodMiniNull]>; }, z.core.$strip>; export declare const flowDisplayClaimBroadcastResponseSchema: z.ZodMiniDiscriminatedUnion<[z.ZodMiniObject<{ outcome: z.ZodMiniLiteral<"claimed">; assignment: z.ZodMiniObject<{ flowAssignmentId: z.ZodMiniString; flowVersionId: z.ZodMiniString; status: z.ZodMiniEnum<{ completed: "completed"; expired: "expired"; held: "held"; pending: "pending"; presented: "presented"; superseded: "superseded"; }>; holdGroupToken: z.ZodMiniUnion, z.ZodMiniNull]>; }, z.core.$strip>; }, z.core.$strip>, z.ZodMiniObject<{ outcome: z.ZodMiniLiteral<"existing">; assignment: z.ZodMiniObject<{ flowAssignmentId: z.ZodMiniString; flowVersionId: z.ZodMiniString; status: z.ZodMiniEnum<{ completed: "completed"; expired: "expired"; held: "held"; pending: "pending"; presented: "presented"; superseded: "superseded"; }>; holdGroupToken: z.ZodMiniUnion, z.ZodMiniNull]>; }, z.core.$strip>; }, z.core.$strip>, z.ZodMiniObject<{ outcome: z.ZodMiniLiteral<"ineligible">; reason: z.ZodMiniOptional>; }, z.core.$strip>], "outcome">; export type RuntimeDisplayBroadcasts = z.output; export type RuntimeDisplayBroadcastOpportunity = z.output; export type RuntimeDisplayAttentionPolicy = DisplayAttentionPolicy; export type RuntimeDisplayEligibility = z.output; export type RuntimeDisplayTrigger = z.output; export type FlowDisplaySyncRequest = z.output; export type FlowDisplaySyncResponse = z.output; export type FlowDisplayClaimBroadcastRequest = z.output; export type FlowDisplayClaimBroadcastResponse = z.output; export type FlowDisplayClaimedBroadcastAssignment = z.output; export type FlowDisplayAttentionPolicyConfig = ResolvedAttentionPolicyConfig; export declare const resolveFlowDisplayAttentionPolicyConfig: (displaySync: Pick) => FlowDisplayAttentionPolicyConfig | undefined; //# sourceMappingURL=flow-display.d.ts.map