import * as av from "anyvali"; import type { Infer } from "anyvali"; export declare const CacheHintsSchema: av.ObjectSchema<{ ttlSeconds: av.IntSchema; varyBy: av.ArraySchema; }>; export type CacheHints = Infer; export declare const ViewRendererVariantSchema: av.ObjectSchema<{ id: av.StringSchema; title: av.StringSchema; slotId: av.StringSchema; renderModes: av.ArraySchema>; }>; export type ViewRendererVariant = Infer; export declare const ViewRendererSupportSchema: av.ObjectSchema<{ defaultRenderer: av.StringSchema; renderModes: av.ArraySchema>; slots: av.ArraySchema; renderers: av.ArraySchema>; }>>; }>; export type ViewRendererSupport = Infer; export declare const HtmlRepresentationSupportSchema: av.ObjectSchema<{ renderers: av.RecordSchema>; slots: av.ArraySchema; renderers: av.ArraySchema>; }>>; }>>; }>; export type HtmlRepresentationSupport = Infer; export declare const ViewDemoScenarioMatchSchema: av.ObjectSchema<{ query: av.OptionalSchema>; params: av.OptionalSchema>; headers: av.OptionalSchema>; request: av.OptionalSchema>; }>; export type ViewDemoScenarioMatch = Infer; export declare const ViewDemoScenarioSchema: av.ObjectSchema<{ id: av.StringSchema; title: av.StringSchema; description: av.OptionalSchema; match: av.OptionalSchema>; params: av.OptionalSchema>; headers: av.OptionalSchema>; request: av.OptionalSchema>; }>>; response: av.BaseSchema; }>; export type ViewDemoScenario = Infer; /** * Optional role hint for a view. Used by discovery flows to auto-fill app config. * Examples: "auth.login", "auth.logout", "auth.refresh", "nav.profile", "footer.brand". * Not enforced - pure metadata. */ export declare const ViewRoleSchema: av.StringSchema; export type ViewRole = Infer; export declare const OperationDependencySchema: av.ObjectSchema<{ serviceId: av.OptionalSchema; operationId: av.StringSchema; method: av.EnumSchema; }>; export type OperationDependency = Infer; /** * Streaming declaration for a view (spec/streaming.md section 5). Present only on * streaming views; `jsonResponseSchema` then holds the derived buffered shape. */ export declare const ViewStreamingSupportSchema: av.ObjectSchema<{ itemSchema: av.BaseSchema; summarySchema: av.OptionalSchema>; }>; export type ViewStreamingSupport = Infer; export declare const ViewOperationMetadataSchema: av.ObjectSchema<{ operationId: av.StringSchema; method: av.EnumSchema; title: av.StringSchema; description: av.StringSchema; querySchema: av.BaseSchema; headersSchema: av.BaseSchema; bodySchema: av.BaseSchema; jsonResponseSchema: av.BaseSchema; metadataResponseSchema: av.BaseSchema; renderable: av.BoolSchema; raw: av.OptionalSchema; streaming: av.OptionalSchema; summarySchema: av.OptionalSchema>; }>>; html: av.ObjectSchema<{ renderers: av.RecordSchema>; slots: av.ArraySchema; renderers: av.ArraySchema>; }>>; }>>; }>; auth: av.ObjectSchema<{ required: av.BoolSchema; callers: av.ArraySchema>; permissions: av.ArraySchema>; }>>; }>; sitemap: av.OptionalSchema; lastModified: av.OptionalSchema; changeFrequency: av.OptionalSchema>; priority: av.OptionalSchema; }>>; robots: av.ArraySchema; crawlDelaySeconds: av.OptionalSchema; }>>; role: av.OptionalSchema; dependencies: av.ArraySchema; operationId: av.StringSchema; method: av.EnumSchema; }>>; chrome: av.OptionalSchema; hideHeader: av.OptionalSchema; hideFooter: av.OptionalSchema; fullScreen: av.OptionalSchema; }>, av.RecordSchema>]>>; apiContracts: av.ArraySchema; version: av.StringSchema; viewId: av.StringSchema; methods: av.ArraySchema>; capabilities: av.ArraySchema; permissions: av.ArraySchema; modes: av.ArraySchema>; }>>; demoScenarios: av.ArraySchema; match: av.OptionalSchema>; params: av.OptionalSchema>; headers: av.OptionalSchema>; request: av.OptionalSchema>; }>>; response: av.BaseSchema; }>>; cacheHints: av.ObjectSchema<{ ttlSeconds: av.IntSchema; varyBy: av.ArraySchema; }>; }>; export type ViewOperationMetadata = Infer; export declare const ViewMetadataSchema: av.ObjectSchema<{ viewId: av.StringSchema; title: av.StringSchema; description: av.StringSchema; path: av.StringSchema; pathVariants: av.ArraySchema; paramsSchema: av.BaseSchema; operations: av.ArraySchema; title: av.StringSchema; description: av.StringSchema; querySchema: av.BaseSchema; headersSchema: av.BaseSchema; bodySchema: av.BaseSchema; jsonResponseSchema: av.BaseSchema; metadataResponseSchema: av.BaseSchema; renderable: av.BoolSchema; raw: av.OptionalSchema; streaming: av.OptionalSchema; summarySchema: av.OptionalSchema>; }>>; html: av.ObjectSchema<{ renderers: av.RecordSchema>; slots: av.ArraySchema; renderers: av.ArraySchema>; }>>; }>>; }>; auth: av.ObjectSchema<{ required: av.BoolSchema; callers: av.ArraySchema>; permissions: av.ArraySchema>; }>>; }>; sitemap: av.OptionalSchema; lastModified: av.OptionalSchema; changeFrequency: av.OptionalSchema>; priority: av.OptionalSchema; }>>; robots: av.ArraySchema; crawlDelaySeconds: av.OptionalSchema; }>>; role: av.OptionalSchema; dependencies: av.ArraySchema; operationId: av.StringSchema; method: av.EnumSchema; }>>; chrome: av.OptionalSchema; hideHeader: av.OptionalSchema; hideFooter: av.OptionalSchema; fullScreen: av.OptionalSchema; }>, av.RecordSchema>]>>; apiContracts: av.ArraySchema; version: av.StringSchema; viewId: av.StringSchema; methods: av.ArraySchema>; capabilities: av.ArraySchema; permissions: av.ArraySchema; modes: av.ArraySchema>; }>>; demoScenarios: av.ArraySchema; match: av.OptionalSchema>; params: av.OptionalSchema>; headers: av.OptionalSchema>; request: av.OptionalSchema>; }>>; response: av.BaseSchema; }>>; cacheHints: av.ObjectSchema<{ ttlSeconds: av.IntSchema; varyBy: av.ArraySchema; }>; }>>; }>; export type ViewMetadata = Infer; export declare const ViewPermissionDefinitionSchema: av.ObjectSchema<{ id: av.StringSchema; title: av.StringSchema; description: av.StringSchema; defaultRoles: av.ArraySchema; }>; export type ViewPermissionDefinition = Infer; //# sourceMappingURL=view.d.ts.map