UNPKG

forest-cli

Version:

The Lumberjacks' toolbelt is the Forest CLI which makes easy to manage your back office application directly from the terminal.

48 lines 1.71 kB
/** Shared types for the `forest layout` commands (pull / diff / apply). */ /** The three patchable domains served by the generic layout patch engine. */ export type LayoutDomain = 'folders' | 'layout' | 'workflows'; export declare const LAYOUT_DOMAINS: LayoutDomain[]; /** A single RFC 6902 JSON-Patch operation, as accepted by `PATCH /api/:domain`. */ export type JsonPatchOp = { op: 'add' | 'remove' | 'replace' | 'test'; path: string; value?: unknown; }; /** A diff-produced operation, enriched for display (`label`/`jsonPath`) and the 403 premium explanation (`premiumPack`). */ export type PlannedOp = JsonPatchOp & { domain: LayoutDomain; label: string; premiumPack?: string; jsonPath: string; }; /** Minimal JSON:API resource shape (the rendering document uses snake_case attributes). */ export type JsonApiResource = { attributes?: Record<string, unknown>; id: string; relationships?: Record<string, { data?: unknown; }>; type: string; }; /** A JSON:API document with its primary resource and the flattened `included` graph. */ export type JsonApiDocument = { data: JsonApiResource; included?: JsonApiResource[]; }; /** Fully-resolved patch scope (ids + names; names are used to build the GET URL). */ export type LayoutScope = { environmentId: number; environmentName: string; projectId: number; projectName: string; serverUrl: string; teamId: number; teamName: string; }; /** Parsed content of forest-layout.json (any domain may be absent on a partial pull). */ export type LayoutFileDoc = { folders?: unknown[]; layout?: unknown; workflows?: unknown[]; }; //# sourceMappingURL=types.d.ts.map