/** * fly (Machines API / "flaps") serializer. * * Turns declared `App`, `Machine`, `Volume`, `IPAddress`, `Certificate`, and * `Secret` resources into the JSON create bodies the flaps REST API accepts, so * #739's applier can POST them straight through and mudflaps (#740) can * round-trip them. * * Output shape — a JSON object keyed by entity name. Each value is a single * flaps request: * * { * "": { * "endpoint": "/v1/apps", // or /v1/apps/{app}/machines * "method": "POST", * "body": { ... } // the create body * } * } * * Field names are taken from mudflaps' Go structs (the wire oracle), which win * over the OpenAPI-generated TypeScript names: * - App → CreateAppRequest `{ app_name, org_slug? }` (NOT `name`). * - Machine→ CreateMachineRequest `{ name?, region?, config?, skip_launch? }`; * `config` is the full MachineConfig. The owning app is a URL path segment, * not a body field, so it lands in `endpoint`. * * D2: every serialized Machine carries the `managed-by: chant` ownership marker * (plus the stack/env identity from `context.ownership`) merged into * `config.metadata`, even when the user supplied no metadata. */ import type { Serializer } from "@intentius/chant/serializer"; /** * fly flaps serializer. */ export declare const flySerializer: Serializer; //# sourceMappingURL=serializer.d.ts.map