/** * Materialize the `views` map (`defineView` entries) into the two halves a view * DOMAIN MEMBER contributes — mirroring `extend-functions.ts`: * * - `ViewDeclarations` — the CONTRACT half, fed to `compileDomain`'s members * arg. The member ref (`view.`), the layout (`//views/`), * and the `of_domain` edge slug all derive from the map key. * - `ViewSchema[]` + per-slug `FunctionBinding` — the IMPL half, fed to * `serialize`. A view carries more than a function: a `UI.handshake` mode and * `view_for` target edges (resolved here to graph paths). The worker route is * `//`, DECOUPLED from the graph layout. * * A view is NOT a core/instance node: the kernel-core serializer attaches it to * the Domain via `of_domain` (slug `view.`) and emits its `view_for` edges, * so this module never touches `Core`. */ import type { FunctionBinding } from '@astrale-os/kernel-api/routed'; import type { ViewDeclarations, ViewSchema } from '@astrale-os/kernel-core/domain'; import type { Schema } from '@astrale-os/kernel-dsl'; import type { ViewDef } from '../define/view.js'; /** * Default URL segment for a view's worker route (`/views/`). Names the * HTTP route only — the graph layout (`//views/`) is a fixed kernel * convention, independent of this. */ export declare const DEFAULT_VIEWS_FOLDER = "views"; type AnyViewDef = ViewDef; /** * Contract half — one declaration per `views` map key, for `compileDomain`'s * `views` arg. The slug drives ref/path/of_domain; impl/binding/view_for arrive * at serialize. */ export declare function buildViewDeclarations(views: Record): ViewDeclarations; /** * Impl half — `ViewSchema[]` for `serialize` plus the per-slug `FunctionBinding` * map the worker mounts routes from. `viewFor` markers are resolved here to * concrete target paths (class meta-nodes) because the kernel-core serializer is * pure and does not resolve `defineCore` endpoints. */ export declare function buildViewSchemas(views: Record, url: string, viewsFolder: string, schema: Schema): { schemas: ViewSchema[]; bindings: Record; }; export {}; //# sourceMappingURL=extend-views.d.ts.map