import { z } from 'zod'; /** * The five layer types built into the default TenSnap renderer registry. * Third-party layer types may still use open `layer_type` strings in the * generic protocol payloads. */ export declare const BuiltinLayerTypeSchema: z.ZodEnum<{ agent: "agent"; background: "background"; edge: "edge"; grid: "grid"; trajectory: "trajectory"; }>; export type BuiltinLayerType = z.infer; /** Agent ids are stable layer item keys and may be strings or numbers. */ export declare const AgentIdSchema: z.ZodUnion; export type AgentId = z.infer; export declare const BUILTIN_AGENT_ICONS: readonly ['arrow', 'circle', 'square', 'triangle', 'diamond', 'star', 'hexagon', 'cross', 'plus', 'pentagon']; /** Built-in symbolic agent icons rendered by the default agent layer. */ export declare const BuiltinAgentIconSchema: z.ZodEnum<{ arrow: "arrow"; circle: "circle"; cross: "cross"; diamond: "diamond"; hexagon: "hexagon"; pentagon: "pentagon"; plus: "plus"; square: "square"; star: "star"; triangle: "triangle"; }>; /** Asset-backed icons use the `asset:` reference form. */ export declare const AssetAgentIconSchema: z.ZodString; /** Built-in symbolic or asset-backed icon accepted by an agent item. */ export declare const AgentIconSchema: z.ZodUnion, z.ZodString]>; export type BuiltinAgentIcon = z.infer; export type AssetAgentIcon = z.infer; export type AgentIcon = z.infer; /** * Common metadata accepted by all built-in layers. Dependencies are create-time * topology and live on `env_layer_create.dependency_layer_ids`, not in metadata. */ export declare const BaseLayerMetadataSchema: z.ZodObject<{ dependency_layer_ids: z.ZodOptional; z_index: z.ZodOptional; }, z.core.$loose>; export type BaseLayerMetadata = z.infer; /** * Agent layer metadata. `coord_offset` selects integer grid-cell coordinates or * floating scene coordinates for x/y agent positions. */ export declare const AgentLayerMetadataSchema: z.ZodObject<{ dependency_layer_ids: z.ZodOptional; z_index: z.ZodOptional; width: z.ZodOptional; height: z.ZodOptional; coord_offset: z.ZodOptional>; }, z.core.$loose>; export type AgentLayerMetadata = z.infer; /** * Agent items are keyed by `id`. They can represent grid agents or graph nodes; * graph-force fields (`vx`, `vy`, `fx`, `fy`) are renderer-maintained hints. */ export declare const AgentItemSchema: z.ZodObject<{ id: z.ZodUnion; color: z.ZodOptional; icon: z.ZodOptional, z.ZodString]>>; size: z.ZodOptional; x: z.ZodOptional; y: z.ZodOptional; vx: z.ZodOptional; vy: z.ZodOptional; fx: z.ZodOptional>; fy: z.ZodOptional>; heading: z.ZodOptional; data: z.ZodOptional>; }, z.core.$loose>; export type AgentItem = z.infer; /** Agent item updates are keyed by `id` and may carry any changed fields. */ export declare const AgentItemDiffSchema: z.ZodObject<{ id: z.ZodUnion; }, z.core.$loose>; export type AgentItemDiff = z.infer; /** * Edge layer metadata configures graph layout forces and edge rendering * defaults. Edge layers depend on an agent layer through dependency key * `agent`. */ export declare const EdgeLayerMetadataSchema: z.ZodObject<{ dependency_layer_ids: z.ZodOptional; z_index: z.ZodOptional; link_distance: z.ZodOptional; charge_strength: z.ZodOptional; centering_strength: z.ZodOptional; collision_radius: z.ZodOptional; max_component_distance: z.ZodOptional; component_spacing: z.ZodOptional; }, z.core.$loose>; export type EdgeLayerMetadata = z.infer; /** Edge items are keyed by the ordered pair (`source`, `target`). */ export declare const EdgeItemSchema: z.ZodObject<{ source: z.ZodUnion; target: z.ZodUnion; directed: z.ZodOptional; style: z.ZodOptional>; width: z.ZodOptional; color: z.ZodOptional; }, z.core.$loose>; export type EdgeItem = z.infer; /** Edge item updates are keyed by `source` and `target`. */ export declare const EdgeItemDiffSchema: z.ZodObject<{ source: z.ZodUnion; target: z.ZodUnion; }, z.core.$loose>; export type EdgeItemDiff = z.infer; /** Delete key for one edge item. */ export declare const EdgeItemKeySchema: z.ZodObject<{ source: z.ZodUnion; target: z.ZodUnion; }, z.core.$strip>; export type EdgeItemKey = z.infer; /** * Trajectory layer metadata sets defaults for per-agent trajectory traces. * Trajectory layers depend on an agent layer through dependency key `agent`. * * Lifecycle defaults are `on_agent_delete: 'delete'`, * `on_state_sync: 'preserve'`, and `on_reset: 'clear'`. A retained deletion * closes the old trace segment so a later reuse of the same agent id starts a * separate line instead of connecting two lifetimes. */ export declare const TrajectoryLayerMetadataSchema: z.ZodObject<{ dependency_layer_ids: z.ZodOptional; z_index: z.ZodOptional; length: z.ZodOptional; width: z.ZodOptional; color: z.ZodOptional; on_agent_delete: z.ZodOptional>; on_state_sync: z.ZodOptional>; on_reset: z.ZodOptional>; }, z.core.$loose>; export type TrajectoryLayerMetadata = z.infer; /** Per-agent trajectory config items are keyed by agent `id`. */ export declare const TrajectoryItemSchema: z.ZodObject<{ id: z.ZodUnion; length: z.ZodOptional; width: z.ZodOptional; color: z.ZodOptional; }, z.core.$loose>; export type TrajectoryItem = z.infer; /** Trajectory item updates are keyed by `id`. */ export declare const TrajectoryItemDiffSchema: z.ZodObject<{ id: z.ZodUnion; }, z.core.$loose>; export type TrajectoryItemDiff = z.infer; /** One historical trajectory sample stored by the renderer. */ export declare const TrajectoryPointSchema: z.ZodObject<{ x: z.ZodNumber; y: z.ZodNumber; time: z.ZodNumber; color: z.ZodOptional; }, z.core.$strip>; export type TrajectoryPoint = z.infer; /** Grid layer metadata controls parametric grid lines and optional scene size. */ export declare const GridLayerMetadataSchema: z.ZodObject<{ dependency_layer_ids: z.ZodOptional; z_index: z.ZodOptional; width: z.ZodOptional; height: z.ZodOptional; x_origin: z.ZodOptional; x_unit: z.ZodOptional; x_interval: z.ZodOptional; x_ratio: z.ZodOptional; y_origin: z.ZodOptional; y_unit: z.ZodOptional; y_interval: z.ZodOptional; y_ratio: z.ZodOptional; stroke_color: z.ZodOptional; }, z.core.$loose>; export type GridLayerMetadata = z.infer; /** Sampling mode for a background image. */ export declare const BackgroundInterpolationSchema: z.ZodEnum<{ linear: "linear"; nearest: "nearest"; }>; export type BackgroundInterpolation = z.infer; /** Background image references point to a previously announced protocol asset. */ export declare const BackgroundAssetReferenceSchema: z.ZodObject<{ asset_id: z.ZodString; interpolation: z.ZodOptional>; }, z.core.$strip>; export type BackgroundAssetReference = z.infer; /** Raw background source accepted by the built-in background layer metadata. */ export declare const BackgroundSourceSchema: z.ZodUnion, Uint8Array>, z.ZodObject<{ asset_id: z.ZodString; interpolation: z.ZodOptional>; }, z.core.$strip>]>; export type BackgroundSource = z.infer; /** Background layer metadata stores color/image/asset source and interpolation. */ export declare const BackgroundLayerMetadataSchema: z.ZodObject<{ dependency_layer_ids: z.ZodOptional; z_index: z.ZodOptional; background: z.ZodOptional, Uint8Array>, z.ZodObject<{ asset_id: z.ZodString; interpolation: z.ZodOptional>; }, z.core.$strip>]>>; interpolation: z.ZodOptional>; }, z.core.$loose>; export type BackgroundLayerMetadata = z.infer; /** Dependency map shape used by edge and trajectory layers. */ export declare const AgentDependencyLayerIdsSchema: z.ZodObject<{ agent: z.ZodString; }, z.core.$loose>; export type AgentDependencyLayerIds = z.infer; /** Built-in `agent` layer create payload. Agent layers do not require dependency layers. */ export declare const AgentLayerCreatePayloadSchema: z.ZodObject<{ env_id: z.ZodString; layer_id: z.ZodString; layer_type: z.ZodLiteral<"agent">; data: z.ZodOptional; z_index: z.ZodOptional; width: z.ZodOptional; height: z.ZodOptional; coord_offset: z.ZodOptional>; }, z.core.$loose>>; }, z.core.$strip>; export type AgentLayerCreatePayload = z.infer; /** Built-in `edge` layer create payload. `dependency_layer_ids.agent` names the source agent layer. */ export declare const EdgeLayerCreatePayloadSchema: z.ZodObject<{ env_id: z.ZodString; layer_id: z.ZodString; layer_type: z.ZodLiteral<"edge">; dependency_layer_ids: z.ZodObject<{ agent: z.ZodString; }, z.core.$loose>; data: z.ZodOptional; z_index: z.ZodOptional; link_distance: z.ZodOptional; charge_strength: z.ZodOptional; centering_strength: z.ZodOptional; collision_radius: z.ZodOptional; max_component_distance: z.ZodOptional; component_spacing: z.ZodOptional; }, z.core.$loose>>; }, z.core.$strip>; export type EdgeLayerCreatePayload = z.infer; /** Built-in `trajectory` layer create payload. `dependency_layer_ids.agent` names the traced agent layer. */ export declare const TrajectoryLayerCreatePayloadSchema: z.ZodObject<{ env_id: z.ZodString; layer_id: z.ZodString; layer_type: z.ZodLiteral<"trajectory">; dependency_layer_ids: z.ZodObject<{ agent: z.ZodString; }, z.core.$loose>; data: z.ZodOptional; z_index: z.ZodOptional; length: z.ZodOptional; width: z.ZodOptional; color: z.ZodOptional; on_agent_delete: z.ZodOptional>; on_state_sync: z.ZodOptional>; on_reset: z.ZodOptional>; }, z.core.$loose>>; }, z.core.$strip>; export type TrajectoryLayerCreatePayload = z.infer; /** Built-in `grid` layer create payload. Grid layers use metadata only and do not accept item messages. */ export declare const GridLayerCreatePayloadSchema: z.ZodObject<{ env_id: z.ZodString; layer_id: z.ZodString; layer_type: z.ZodLiteral<"grid">; data: z.ZodOptional; z_index: z.ZodOptional; width: z.ZodOptional; height: z.ZodOptional; x_origin: z.ZodOptional; x_unit: z.ZodOptional; x_interval: z.ZodOptional; x_ratio: z.ZodOptional; y_origin: z.ZodOptional; y_unit: z.ZodOptional; y_interval: z.ZodOptional; y_ratio: z.ZodOptional; stroke_color: z.ZodOptional; }, z.core.$loose>>; }, z.core.$strip>; export type GridLayerCreatePayload = z.infer; /** Built-in `background` layer create payload. Background layers use metadata only and do not accept item messages. */ export declare const BackgroundLayerCreatePayloadSchema: z.ZodObject<{ env_id: z.ZodString; layer_id: z.ZodString; layer_type: z.ZodLiteral<"background">; data: z.ZodOptional; z_index: z.ZodOptional; background: z.ZodOptional, Uint8Array>, z.ZodObject<{ asset_id: z.ZodString; interpolation: z.ZodOptional>; }, z.core.$strip>]>>; interpolation: z.ZodOptional>; }, z.core.$loose>>; }, z.core.$strip>; export type BackgroundLayerCreatePayload = z.infer; /** Union of the five built-in layer create payload specializations. */ export declare const BuiltinLayerCreatePayloadSchema: z.ZodUnion; data: z.ZodOptional; z_index: z.ZodOptional; background: z.ZodOptional, Uint8Array>, z.ZodObject<{ asset_id: z.ZodString; interpolation: z.ZodOptional>; }, z.core.$strip>]>>; interpolation: z.ZodOptional>; }, z.core.$loose>>; }, z.core.$strip>, z.ZodObject<{ env_id: z.ZodString; layer_id: z.ZodString; layer_type: z.ZodLiteral<"grid">; data: z.ZodOptional; z_index: z.ZodOptional; width: z.ZodOptional; height: z.ZodOptional; x_origin: z.ZodOptional; x_unit: z.ZodOptional; x_interval: z.ZodOptional; x_ratio: z.ZodOptional; y_origin: z.ZodOptional; y_unit: z.ZodOptional; y_interval: z.ZodOptional; y_ratio: z.ZodOptional; stroke_color: z.ZodOptional; }, z.core.$loose>>; }, z.core.$strip>, z.ZodObject<{ env_id: z.ZodString; layer_id: z.ZodString; layer_type: z.ZodLiteral<"edge">; dependency_layer_ids: z.ZodObject<{ agent: z.ZodString; }, z.core.$loose>; data: z.ZodOptional; z_index: z.ZodOptional; link_distance: z.ZodOptional; charge_strength: z.ZodOptional; centering_strength: z.ZodOptional; collision_radius: z.ZodOptional; max_component_distance: z.ZodOptional; component_spacing: z.ZodOptional; }, z.core.$loose>>; }, z.core.$strip>, z.ZodObject<{ env_id: z.ZodString; layer_id: z.ZodString; layer_type: z.ZodLiteral<"trajectory">; dependency_layer_ids: z.ZodObject<{ agent: z.ZodString; }, z.core.$loose>; data: z.ZodOptional; z_index: z.ZodOptional; length: z.ZodOptional; width: z.ZodOptional; color: z.ZodOptional; on_agent_delete: z.ZodOptional>; on_state_sync: z.ZodOptional>; on_reset: z.ZodOptional>; }, z.core.$loose>>; }, z.core.$strip>, z.ZodObject<{ env_id: z.ZodString; layer_id: z.ZodString; layer_type: z.ZodLiteral<"agent">; data: z.ZodOptional; z_index: z.ZodOptional; width: z.ZodOptional; height: z.ZodOptional; coord_offset: z.ZodOptional>; }, z.core.$loose>>; }, z.core.$strip>]>; export type BuiltinLayerCreatePayload = z.infer; /** `item_create` payload specialization for built-in agent layers. */ export declare const AgentItemCreatePayloadSchema: z.ZodObject<{ env_id: z.ZodString; layer_id: z.ZodString; items: z.ZodArray; color: z.ZodOptional; icon: z.ZodOptional, z.ZodString]>>; size: z.ZodOptional; x: z.ZodOptional; y: z.ZodOptional; vx: z.ZodOptional; vy: z.ZodOptional; fx: z.ZodOptional>; fy: z.ZodOptional>; heading: z.ZodOptional; data: z.ZodOptional>; }, z.core.$loose>>; }, z.core.$strip>; export type AgentItemCreatePayload = z.infer; /** `item_update` payload specialization for built-in agent layers. */ export declare const AgentItemUpdatePayloadSchema: z.ZodObject<{ env_id: z.ZodString; layer_id: z.ZodString; items: z.ZodArray; }, z.core.$loose>>; }, z.core.$strip>; export type AgentItemUpdatePayload = z.infer; /** `item_delete` payload specialization for built-in agent layers, keyed by agent id. */ export declare const AgentItemDeletePayloadSchema: z.ZodObject<{ env_id: z.ZodString; layer_id: z.ZodString; items: z.ZodArray>; }, z.core.$strip>; export type AgentItemDeletePayload = z.infer; /** `item_create` payload specialization for built-in edge layers. */ export declare const EdgeItemCreatePayloadSchema: z.ZodObject<{ env_id: z.ZodString; layer_id: z.ZodString; items: z.ZodArray; target: z.ZodUnion; directed: z.ZodOptional; style: z.ZodOptional>; width: z.ZodOptional; color: z.ZodOptional; }, z.core.$loose>>; }, z.core.$strip>; export type EdgeItemCreatePayload = z.infer; /** `item_update` payload specialization for built-in edge layers. */ export declare const EdgeItemUpdatePayloadSchema: z.ZodObject<{ env_id: z.ZodString; layer_id: z.ZodString; items: z.ZodArray; target: z.ZodUnion; }, z.core.$loose>>; }, z.core.$strip>; export type EdgeItemUpdatePayload = z.infer; /** `item_delete` payload specialization for built-in edge layers, keyed by source/target pairs. */ export declare const EdgeItemDeletePayloadSchema: z.ZodObject<{ env_id: z.ZodString; layer_id: z.ZodString; items: z.ZodArray; target: z.ZodUnion; }, z.core.$strip>>; }, z.core.$strip>; export type EdgeItemDeletePayload = z.infer; /** `item_create` payload specialization for built-in trajectory layers. */ export declare const TrajectoryItemCreatePayloadSchema: z.ZodObject<{ env_id: z.ZodString; layer_id: z.ZodString; items: z.ZodArray; length: z.ZodOptional; width: z.ZodOptional; color: z.ZodOptional; }, z.core.$loose>>; }, z.core.$strip>; export type TrajectoryItemCreatePayload = z.infer; /** `item_update` payload specialization for built-in trajectory layers. */ export declare const TrajectoryItemUpdatePayloadSchema: z.ZodObject<{ env_id: z.ZodString; layer_id: z.ZodString; items: z.ZodArray; }, z.core.$loose>>; }, z.core.$strip>; export type TrajectoryItemUpdatePayload = z.infer; /** `item_delete` payload specialization for built-in trajectory layers, keyed by agent id. */ export declare const TrajectoryItemDeletePayloadSchema: z.ZodObject<{ env_id: z.ZodString; layer_id: z.ZodString; items: z.ZodArray>; }, z.core.$strip>; export type TrajectoryItemDeletePayload = z.infer; /** Union of built-in layer `item_create` payload specializations. Grid and background layers have no items. */ export declare const BuiltinLayerItemCreatePayloadSchema: z.ZodUnion; color: z.ZodOptional; icon: z.ZodOptional, z.ZodString]>>; size: z.ZodOptional; x: z.ZodOptional; y: z.ZodOptional; vx: z.ZodOptional; vy: z.ZodOptional; fx: z.ZodOptional>; fy: z.ZodOptional>; heading: z.ZodOptional; data: z.ZodOptional>; }, z.core.$loose>>; }, z.core.$strip>, z.ZodObject<{ env_id: z.ZodString; layer_id: z.ZodString; items: z.ZodArray; target: z.ZodUnion; directed: z.ZodOptional; style: z.ZodOptional>; width: z.ZodOptional; color: z.ZodOptional; }, z.core.$loose>>; }, z.core.$strip>, z.ZodObject<{ env_id: z.ZodString; layer_id: z.ZodString; items: z.ZodArray; length: z.ZodOptional; width: z.ZodOptional; color: z.ZodOptional; }, z.core.$loose>>; }, z.core.$strip>]>; export type BuiltinLayerItemCreatePayload = z.infer; /** Union of built-in layer `item_update` payload specializations. Grid and background layers have no items. */ export declare const BuiltinLayerItemUpdatePayloadSchema: z.ZodUnion; }, z.core.$loose>>; }, z.core.$strip>, z.ZodObject<{ env_id: z.ZodString; layer_id: z.ZodString; items: z.ZodArray; target: z.ZodUnion; }, z.core.$loose>>; }, z.core.$strip>, z.ZodObject<{ env_id: z.ZodString; layer_id: z.ZodString; items: z.ZodArray; }, z.core.$loose>>; }, z.core.$strip>]>; export type BuiltinLayerItemUpdatePayload = z.infer; /** Union of built-in layer `item_delete` payload specializations. Grid and background layers have no items. */ export declare const BuiltinLayerItemDeletePayloadSchema: z.ZodUnion>; }, z.core.$strip>, z.ZodObject<{ env_id: z.ZodString; layer_id: z.ZodString; items: z.ZodArray; target: z.ZodUnion; }, z.core.$strip>>; }, z.core.$strip>, z.ZodObject<{ env_id: z.ZodString; layer_id: z.ZodString; items: z.ZodArray>; }, z.core.$strip>]>; export type BuiltinLayerItemDeletePayload = z.infer; //# sourceMappingURL=layers.d.ts.map