import { z } from "zod"; export declare const BROWSER_CONTEXT_V1_SCHEMA: "browser-context.v1"; export declare const BROWSER_CONTEXT_V1_LIMITS: { readonly totalBytes: number; readonly projections: 3; readonly readableTextChars: number; readonly readableBlocks: 500; readonly readableLinks: 250; readonly designElements: 300; readonly designStylesPerElement: 80; readonly designTokens: 300; readonly controlNodes: 2000; readonly controlChildrenPerNode: 200; readonly controlPropertiesPerNode: 40; readonly screenshots: 4; }; export declare const browserReadableProjectionV1Schema: z.ZodObject<{ type: z.ZodLiteral<"readable">; status: z.ZodDiscriminatedUnion<[z.ZodObject<{ state: z.ZodLiteral<"complete">; }, z.core.$strict>, z.ZodObject<{ state: z.ZodLiteral<"truncated">; reason: z.ZodEnum<{ "byte-limit": "byte-limit"; "item-limit": "item-limit"; "permission-limit": "permission-limit"; "source-limit": "source-limit"; }>; omittedItems: z.ZodOptional; omittedBytes: z.ZodOptional; detail: z.ZodOptional; }, z.core.$strict>], "state">; text: z.ZodString; selection: z.ZodOptional; blocks: z.ZodOptional; text: z.ZodString; level: z.ZodOptional; }, z.core.$strict>>>; links: z.ZodOptional>>; }, z.core.$strict>; export declare const browserScreenshotReferenceV1Schema: z.ZodObject<{ id: z.ZodOptional; url: z.ZodOptional; contentType: z.ZodEnum<{ "image/jpeg": "image/jpeg"; "image/png": "image/png"; "image/webp": "image/webp"; }>; sha256: z.ZodString; byteSize: z.ZodNumber; width: z.ZodNumber; height: z.ZodNumber; }, z.core.$strict>; export declare const browserDesignProjectionV1Schema: z.ZodObject<{ type: z.ZodLiteral<"design">; status: z.ZodDiscriminatedUnion<[z.ZodObject<{ state: z.ZodLiteral<"complete">; }, z.core.$strict>, z.ZodObject<{ state: z.ZodLiteral<"truncated">; reason: z.ZodEnum<{ "byte-limit": "byte-limit"; "item-limit": "item-limit"; "permission-limit": "permission-limit"; "source-limit": "source-limit"; }>; omittedItems: z.ZodOptional; omittedBytes: z.ZodOptional; detail: z.ZodOptional; }, z.core.$strict>], "state">; viewport: z.ZodObject<{ width: z.ZodNumber; height: z.ZodNumber; scrollX: z.ZodNumber; scrollY: z.ZodNumber; }, z.core.$strict>; elements: z.ZodArray; text: z.ZodOptional; bounds: z.ZodObject<{ x: z.ZodNumber; y: z.ZodNumber; width: z.ZodNumber; height: z.ZodNumber; }, z.core.$strict>; computedStyles: z.ZodOptional>; }, z.core.$strict>>; tokens: z.ZodOptional; name: z.ZodOptional; value: z.ZodString; occurrences: z.ZodOptional; }, z.core.$strict>>>; screenshots: z.ZodOptional; url: z.ZodOptional; contentType: z.ZodEnum<{ "image/jpeg": "image/jpeg"; "image/png": "image/png"; "image/webp": "image/webp"; }>; sha256: z.ZodString; byteSize: z.ZodNumber; width: z.ZodNumber; height: z.ZodNumber; }, z.core.$strict>>>; }, z.core.$strict>; export declare const browserControlProjectionV1Schema: z.ZodObject<{ type: z.ZodLiteral<"control">; status: z.ZodDiscriminatedUnion<[z.ZodObject<{ state: z.ZodLiteral<"complete">; }, z.core.$strict>, z.ZodObject<{ state: z.ZodLiteral<"truncated">; reason: z.ZodEnum<{ "byte-limit": "byte-limit"; "item-limit": "item-limit"; "permission-limit": "permission-limit"; "source-limit": "source-limit"; }>; omittedItems: z.ZodOptional; omittedBytes: z.ZodOptional; detail: z.ZodOptional; }, z.core.$strict>], "state">; ephemeral: z.ZodLiteral; observationId: z.ZodString; expiresAt: z.ZodISODateTime; tabId: z.ZodNumber; origin: z.ZodString; nodes: z.ZodArray; ignored: z.ZodOptional; role: z.ZodOptional>; name: z.ZodOptional>; value: z.ZodOptional>; description: z.ZodOptional>; childIds: z.ZodOptional>; properties: z.ZodOptional; }, z.core.$strict>>>; }, z.core.$strict>>; }, z.core.$strict>; export declare const browserContextProjectionV1Schema: z.ZodDiscriminatedUnion<[z.ZodObject<{ type: z.ZodLiteral<"readable">; status: z.ZodDiscriminatedUnion<[z.ZodObject<{ state: z.ZodLiteral<"complete">; }, z.core.$strict>, z.ZodObject<{ state: z.ZodLiteral<"truncated">; reason: z.ZodEnum<{ "byte-limit": "byte-limit"; "item-limit": "item-limit"; "permission-limit": "permission-limit"; "source-limit": "source-limit"; }>; omittedItems: z.ZodOptional; omittedBytes: z.ZodOptional; detail: z.ZodOptional; }, z.core.$strict>], "state">; text: z.ZodString; selection: z.ZodOptional; blocks: z.ZodOptional; text: z.ZodString; level: z.ZodOptional; }, z.core.$strict>>>; links: z.ZodOptional>>; }, z.core.$strict>, z.ZodObject<{ type: z.ZodLiteral<"design">; status: z.ZodDiscriminatedUnion<[z.ZodObject<{ state: z.ZodLiteral<"complete">; }, z.core.$strict>, z.ZodObject<{ state: z.ZodLiteral<"truncated">; reason: z.ZodEnum<{ "byte-limit": "byte-limit"; "item-limit": "item-limit"; "permission-limit": "permission-limit"; "source-limit": "source-limit"; }>; omittedItems: z.ZodOptional; omittedBytes: z.ZodOptional; detail: z.ZodOptional; }, z.core.$strict>], "state">; viewport: z.ZodObject<{ width: z.ZodNumber; height: z.ZodNumber; scrollX: z.ZodNumber; scrollY: z.ZodNumber; }, z.core.$strict>; elements: z.ZodArray; text: z.ZodOptional; bounds: z.ZodObject<{ x: z.ZodNumber; y: z.ZodNumber; width: z.ZodNumber; height: z.ZodNumber; }, z.core.$strict>; computedStyles: z.ZodOptional>; }, z.core.$strict>>; tokens: z.ZodOptional; name: z.ZodOptional; value: z.ZodString; occurrences: z.ZodOptional; }, z.core.$strict>>>; screenshots: z.ZodOptional; url: z.ZodOptional; contentType: z.ZodEnum<{ "image/jpeg": "image/jpeg"; "image/png": "image/png"; "image/webp": "image/webp"; }>; sha256: z.ZodString; byteSize: z.ZodNumber; width: z.ZodNumber; height: z.ZodNumber; }, z.core.$strict>>>; }, z.core.$strict>, z.ZodObject<{ type: z.ZodLiteral<"control">; status: z.ZodDiscriminatedUnion<[z.ZodObject<{ state: z.ZodLiteral<"complete">; }, z.core.$strict>, z.ZodObject<{ state: z.ZodLiteral<"truncated">; reason: z.ZodEnum<{ "byte-limit": "byte-limit"; "item-limit": "item-limit"; "permission-limit": "permission-limit"; "source-limit": "source-limit"; }>; omittedItems: z.ZodOptional; omittedBytes: z.ZodOptional; detail: z.ZodOptional; }, z.core.$strict>], "state">; ephemeral: z.ZodLiteral; observationId: z.ZodString; expiresAt: z.ZodISODateTime; tabId: z.ZodNumber; origin: z.ZodString; nodes: z.ZodArray; ignored: z.ZodOptional; role: z.ZodOptional>; name: z.ZodOptional>; value: z.ZodOptional>; description: z.ZodOptional>; childIds: z.ZodOptional>; properties: z.ZodOptional; }, z.core.$strict>>>; }, z.core.$strict>>; }, z.core.$strict>], "type">; export declare const browserContextV1Schema: z.ZodObject<{ schema: z.ZodLiteral<"browser-context.v1">; captureId: z.ZodString; capturedAt: z.ZodISODateTime; page: z.ZodObject<{ url: z.ZodString; origin: z.ZodString; title: z.ZodString; }, z.core.$strict>; outcome: z.ZodDiscriminatedUnion<[z.ZodObject<{ state: z.ZodEnum<{ complete: "complete"; truncated: "truncated"; }>; projections: z.ZodArray; status: z.ZodDiscriminatedUnion<[z.ZodObject<{ state: z.ZodLiteral<"complete">; }, z.core.$strict>, z.ZodObject<{ state: z.ZodLiteral<"truncated">; reason: z.ZodEnum<{ "byte-limit": "byte-limit"; "item-limit": "item-limit"; "permission-limit": "permission-limit"; "source-limit": "source-limit"; }>; omittedItems: z.ZodOptional; omittedBytes: z.ZodOptional; detail: z.ZodOptional; }, z.core.$strict>], "state">; text: z.ZodString; selection: z.ZodOptional; blocks: z.ZodOptional; text: z.ZodString; level: z.ZodOptional; }, z.core.$strict>>>; links: z.ZodOptional>>; }, z.core.$strict>, z.ZodObject<{ type: z.ZodLiteral<"design">; status: z.ZodDiscriminatedUnion<[z.ZodObject<{ state: z.ZodLiteral<"complete">; }, z.core.$strict>, z.ZodObject<{ state: z.ZodLiteral<"truncated">; reason: z.ZodEnum<{ "byte-limit": "byte-limit"; "item-limit": "item-limit"; "permission-limit": "permission-limit"; "source-limit": "source-limit"; }>; omittedItems: z.ZodOptional; omittedBytes: z.ZodOptional; detail: z.ZodOptional; }, z.core.$strict>], "state">; viewport: z.ZodObject<{ width: z.ZodNumber; height: z.ZodNumber; scrollX: z.ZodNumber; scrollY: z.ZodNumber; }, z.core.$strict>; elements: z.ZodArray; text: z.ZodOptional; bounds: z.ZodObject<{ x: z.ZodNumber; y: z.ZodNumber; width: z.ZodNumber; height: z.ZodNumber; }, z.core.$strict>; computedStyles: z.ZodOptional>; }, z.core.$strict>>; tokens: z.ZodOptional; name: z.ZodOptional; value: z.ZodString; occurrences: z.ZodOptional; }, z.core.$strict>>>; screenshots: z.ZodOptional; url: z.ZodOptional; contentType: z.ZodEnum<{ "image/jpeg": "image/jpeg"; "image/png": "image/png"; "image/webp": "image/webp"; }>; sha256: z.ZodString; byteSize: z.ZodNumber; width: z.ZodNumber; height: z.ZodNumber; }, z.core.$strict>>>; }, z.core.$strict>, z.ZodObject<{ type: z.ZodLiteral<"control">; status: z.ZodDiscriminatedUnion<[z.ZodObject<{ state: z.ZodLiteral<"complete">; }, z.core.$strict>, z.ZodObject<{ state: z.ZodLiteral<"truncated">; reason: z.ZodEnum<{ "byte-limit": "byte-limit"; "item-limit": "item-limit"; "permission-limit": "permission-limit"; "source-limit": "source-limit"; }>; omittedItems: z.ZodOptional; omittedBytes: z.ZodOptional; detail: z.ZodOptional; }, z.core.$strict>], "state">; ephemeral: z.ZodLiteral; observationId: z.ZodString; expiresAt: z.ZodISODateTime; tabId: z.ZodNumber; origin: z.ZodString; nodes: z.ZodArray; ignored: z.ZodOptional; role: z.ZodOptional>; name: z.ZodOptional>; value: z.ZodOptional>; description: z.ZodOptional>; childIds: z.ZodOptional>; properties: z.ZodOptional; }, z.core.$strict>>>; }, z.core.$strict>>; }, z.core.$strict>], "type">>; }, z.core.$strict>, z.ZodObject<{ state: z.ZodLiteral<"failure">; failure: z.ZodObject<{ code: z.ZodString; message: z.ZodString; retryable: z.ZodBoolean; }, z.core.$strict>; }, z.core.$strict>], "state">; }, z.core.$strict>; export type BrowserReadableProjectionV1 = z.infer; export type BrowserDesignProjectionV1 = z.infer; export type BrowserControlProjectionV1 = z.infer; export type BrowserScreenshotReferenceV1 = z.infer; export type BrowserContextProjectionV1 = z.infer; export type BrowserContextV1 = z.infer; export declare function parseBrowserContextV1(value: unknown): BrowserContextV1; export declare function safeParseBrowserContextV1(value: unknown): z.ZodSafeParseResult<{ schema: "browser-context.v1"; captureId: string; capturedAt: string; page: { url: string; origin: string; title: string; }; outcome: { state: "complete" | "truncated"; projections: ({ type: "control"; status: { state: "complete"; } | { state: "truncated"; reason: "byte-limit" | "item-limit" | "permission-limit" | "source-limit"; omittedItems?: number | undefined; omittedBytes?: number | undefined; detail?: string | undefined; }; ephemeral: true; observationId: string; expiresAt: string; tabId: number; origin: string; nodes: { nodeId: string; backendNodeId?: number | undefined; ignored?: boolean | undefined; role?: string | number | boolean | undefined; name?: string | number | boolean | undefined; value?: string | number | boolean | undefined; description?: string | number | boolean | undefined; childIds?: string[] | undefined; properties?: { name: string; value: string | number | boolean; }[] | undefined; }[]; } | { type: "readable"; status: { state: "complete"; } | { state: "truncated"; reason: "byte-limit" | "item-limit" | "permission-limit" | "source-limit"; omittedItems?: number | undefined; omittedBytes?: number | undefined; detail?: string | undefined; }; text: string; selection?: string | undefined; blocks?: { role: "code" | "heading" | "list-item" | "other" | "paragraph" | "quote" | "table-cell"; text: string; level?: number | undefined; }[] | undefined; links?: { label: string; url: string; }[] | undefined; } | { type: "design"; status: { state: "complete"; } | { state: "truncated"; reason: "byte-limit" | "item-limit" | "permission-limit" | "source-limit"; omittedItems?: number | undefined; omittedBytes?: number | undefined; detail?: string | undefined; }; viewport: { width: number; height: number; scrollX: number; scrollY: number; }; elements: { id: string; tagName: string; selector?: string | undefined; text?: string | undefined; bounds: { x: number; y: number; width: number; height: number; }; computedStyles?: Record | undefined; }[]; tokens?: { kind: "color" | "font" | "motion" | "other" | "radius" | "shadow" | "space"; name?: string | undefined; value: string; occurrences?: number | undefined; }[] | undefined; screenshots?: { id?: string | undefined; url?: string | undefined; contentType: "image/jpeg" | "image/png" | "image/webp"; sha256: string; byteSize: number; width: number; height: number; }[] | undefined; })[]; } | { state: "failure"; failure: { code: string; message: string; retryable: boolean; }; }; }>;