@nodaro/shared 2.7.0 → 2.10.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.ts CHANGED
@@ -512,7 +512,7 @@ declare function creditsToUsd(credits: number): number;
512
512
  * Single source of truth for model capability sets and variable pricing rules.
513
513
  */
514
514
 
515
- /** Base USD cost per 1 Nodaro credit, at cost. Used for cost→credit conversion. */
515
+ /** Base USD value of 1 Nodaro credit. Used for cost→credit conversion. */
516
516
  declare const CREDIT_BASE_USD = 0.002;
517
517
  /** Max characters for the (assembled) prompt accepted by the image-generation routes
518
518
  * (generate-image, image-to-image, edit-image). Single source of truth — the route Zod
@@ -634,13 +634,22 @@ declare function getMaxTtsChars(provider: string | undefined): number;
634
634
  * Suno per-version field caps (from docs.kie.ai/suno-api/generate-music). The old
635
635
  * flat {@link SUNO_TEXT_MAX} (3000) was simultaneously too low for V4.5+/V5
636
636
  * prompts (5000) and too high for `style` (1000) and `title` (80).
637
- * - prompt / lyrics: 500 in non-custom mode (all versions); in custom mode
637
+ * - prompt / lyrics: 3000 in non-custom mode (all versions); in custom mode
638
638
  * 3000 for V4/V3.5 and 5000 for V4.5 / V4.5PLUS / V4.5ALL / V5 / V5.5.
639
639
  * - style: 200 for V4/V3.5, 1000 for V4.5+.
640
640
  * - title: 80 (all versions).
641
641
  */
642
642
  declare const SUNO_TITLE_MAX = 80;
643
- /** Max Suno `prompt` (= lyrics in custom mode) length for a model version. */
643
+ /**
644
+ * Max Suno `prompt` (= lyrics in custom mode) length for a model version.
645
+ *
646
+ * NON-CUSTOM WAS 500 UNTIL 2026-08-19 — six times under the provider's
647
+ * documented 3000, and the route TRUNCATES to this number instead of
648
+ * rejecting, so everything past it vanished without a trace. Field evidence:
649
+ * a 950-character recast score brief (instruments, vocal, the source's own
650
+ * scat syllables, the arrangement's arc) reached Suno as exactly 500
651
+ * characters, cut mid-word.
652
+ */
644
653
  declare function getMaxSunoPromptChars(model: string | undefined, customMode: boolean): number;
645
654
  /** Max Suno `style` length for a model version. */
646
655
  declare function getMaxSunoStyleChars(model: string | undefined): number;
@@ -737,7 +746,7 @@ declare const IDEOGRAM_PROVIDERS: Set<string>;
737
746
  /** Text-to-image providers (no input image required) */
738
747
  declare const IMAGE_GEN_PROVIDERS: readonly ["nano-banana", "flux", "nano-banana-pro", "nano-banana-2", "nano-banana-2-lite", "grok", "grok-2", "gpt-image", "gpt-image-2", "imagen4", "imagen4-fast", "imagen4-ultra", "ideogram-v3", "qwen", "seedream", "seedream-5-lite", "seedream-5-pro", "flux-flex", "flux-kontext", "flux-kontext-max", "z-image", "wan-2.7", "wan-2.7-pro", "flux-2-klein", "flux-2-pro", "flux-2-max"];
739
748
  /** Image-to-image providers (require input image) */
740
- declare const IMAGE_I2I_PROVIDERS: readonly ["nano-banana", "nano-banana-2", "nano-banana-2-lite", "nano-banana-pro", "grok-i2i", "flux-i2i", "flux-pro-i2i", "gpt-image-i2i", "gpt-image-2-i2i", "ideogram-edit", "ideogram-remix", "ideogram-reframe", "qwen-i2i", "qwen-edit", "seedream-edit", "seedream-5-lite-i2i", "seedream-5-pro-i2i", "flux-kontext", "flux-kontext-max", "kontext-multi", "flux-2-pro", "flux-fill", "flux-2-max", "flux-fill"];
749
+ declare const IMAGE_I2I_PROVIDERS: readonly ["nano-banana", "nano-banana-2", "nano-banana-2-lite", "nano-banana-pro", "grok-i2i", "flux-i2i", "flux-pro-i2i", "gpt-image-i2i", "gpt-image-2-i2i", "grok-2-i2i", "ideogram-edit", "ideogram-remix", "ideogram-reframe", "qwen-i2i", "qwen-edit", "seedream-edit", "seedream-5-lite-i2i", "seedream-5-pro-i2i", "flux-kontext", "flux-kontext-max", "kontext-multi", "flux-2-pro", "flux-fill", "flux-2-max", "flux-fill"];
741
750
  /** Image editing providers (upscale, remove bg, etc.) */
742
751
  declare const IMAGE_EDIT_PROVIDERS: readonly ["recraft-upscale", "recraft-remove-bg", "nano-banana-edit", "topaz-image-upscale", "grok-upscale", "grok-2-edit", "grok-2-segment"];
743
752
  /**
@@ -751,7 +760,7 @@ declare const IMAGE_EDIT_PROVIDERS: readonly ["recraft-upscale", "recraft-remove
751
760
  */
752
761
  declare const TASK_CHAINED_EDIT_PROVIDERS: ReadonlySet<string>;
753
762
  /** Modify image providers (I2I + edit-with-prompt) */
754
- declare const MODIFY_IMAGE_PROVIDERS: readonly ["nano-banana", "nano-banana-2", "nano-banana-2-lite", "nano-banana-pro", "grok-i2i", "flux-i2i", "flux-pro-i2i", "gpt-image-i2i", "gpt-image-2-i2i", "ideogram-edit", "ideogram-remix", "ideogram-reframe", "qwen-i2i", "qwen-edit", "seedream-edit", "seedream-5-lite-i2i", "seedream-5-pro-i2i", "flux-kontext", "flux-kontext-max", "kontext-multi", "flux-2-pro", "flux-fill", "flux-2-max", "flux-fill", "nano-banana-edit"];
763
+ declare const MODIFY_IMAGE_PROVIDERS: readonly ["nano-banana", "nano-banana-2", "nano-banana-2-lite", "nano-banana-pro", "grok-i2i", "flux-i2i", "flux-pro-i2i", "gpt-image-i2i", "gpt-image-2-i2i", "grok-2-i2i", "ideogram-edit", "ideogram-remix", "ideogram-reframe", "qwen-i2i", "qwen-edit", "seedream-edit", "seedream-5-lite-i2i", "seedream-5-pro-i2i", "flux-kontext", "flux-kontext-max", "kontext-multi", "flux-2-pro", "flux-fill", "flux-2-max", "flux-fill", "nano-banana-edit"];
755
764
  type ModifyImageProvider = typeof MODIFY_IMAGE_PROVIDERS[number];
756
765
  /** Image upscale providers */
757
766
  declare const UPSCALE_IMAGE_PROVIDERS: readonly ["recraft-upscale", "topaz-image-upscale"];
@@ -802,6 +811,26 @@ declare const VIDEO_MODE_ALIASES: readonly VideoModeAlias[];
802
811
  * through unchanged.
803
812
  */
804
813
  declare function resolveVideoProviderForMode(provider: string, mode: "image-to-video" | "text-to-video"): string;
814
+ /**
815
+ * Which execution mode a unified Generate Video run takes from what is wired.
816
+ * Shared by the frontend DAG executor (`execute-node.ts`) and the backend
817
+ * orchestrator (`payload-builder.ts`) so the two cannot disagree.
818
+ *
819
+ * A start frame is image-to-video, full stop. Reference images ALONE are the
820
+ * nuance: most models forward refs on either path, but a split-id model
821
+ * (VIDEO_MODE_ALIASES) can carry them on one twin only — Grok Imagine 1's
822
+ * text-to-video endpoint has no image parameter at all, while its i2v twin
823
+ * takes up to 7. Refs wired without a start frame used to resolve to t2v →
824
+ * `grok` → silently dropped (#861). When refs are present and ONLY the i2v
825
+ * twin can carry them, the run is image-to-video with the refs as its images.
826
+ * Derived from VIDEO_REF_LIMITS_BY_PROVIDER (= the catalog's `reference-image`
827
+ * feature), never from a provider name; single-id models are untouched
828
+ * because both twins are the same id.
829
+ */
830
+ declare function resolveVideoModeForInputs(provider: string | undefined, inputs: {
831
+ readonly hasStartFrame: boolean;
832
+ readonly hasImageRefs: boolean;
833
+ }): "image-to-video" | "text-to-video";
805
834
  /**
806
835
  * t2v twin ids hidden from the unified Generate Video picker — the i2v/base
807
836
  * entry already represents both modes (execution remaps by image presence).
@@ -1105,9 +1134,8 @@ declare const SEEDANCE_2_R2V_MIN_REF_VIDEO_SEC = 1.8;
1105
1134
  * credit formulas bill per continuation join. Clears the provider floor
1106
1135
  * above with margin while staying short enough to keep the model focused on
1107
1136
  * continuing the boundary motion instead of re-staging the whole clip.
1108
- * Guarded ≥ floor by model-constants tests; the private-plugin twin
1109
- * (nodaro-cloud-plugins chain.ts TAIL_SEC / bridge-math.ts MIN_REF) is
1110
- * guarded by that repo's r2v-ref-floor.test.ts — keep the two in sync.
1137
+ * Guarded ≥ floor by model-constants tests; the plugin repo carries a twin
1138
+ * constant guarded by its own tests — keep the two in sync.
1111
1139
  */
1112
1140
  declare const SEEDANCE_2_CONTINUATION_REF_SEC = 2;
1113
1141
  /**
@@ -1596,7 +1624,7 @@ interface FilmCreditEstimate {
1596
1624
  declare function estimateFilmCredits(durationSeconds: number, videoModel?: string): FilmCreditEstimate;
1597
1625
 
1598
1626
  /**
1599
- * Featured entity starter catalog (north-star §6 ③ — the "Featured" tab of each
1627
+ * Featured entity starter catalog (the "Featured" tab of each
1600
1628
  * entity Library).
1601
1629
  *
1602
1630
  * These are app-provided starter presets: a curated visual description per
@@ -1847,7 +1875,7 @@ interface LoopTrimEstimatorInput {
1847
1875
  * Formula: ceil(duration / 5) + ceil(framesToTest / 24) — matches the
1848
1876
  * trim-video smart-loop-cut formula for consistency. */
1849
1877
  declare function estimateLoopTrimAddonCredits(loopTrim: LoopTrimEstimatorInput | undefined, outputDurationSeconds: number): number;
1850
- /** BASE credits (at-cost) for assemble-narrated-video: 3 flat + 1 per 6
1878
+ /** BASE credits for assemble-narrated-video: 3 flat + 1 per 6
1851
1879
  * blocks. 6→4, 24→7, 60→13. Single source of truth shared by the backend
1852
1880
  * route/creditGuard (`backend/src/providers/video/narrated-block-fit.ts`
1853
1881
  * re-exports this) and the frontend pre-run estimate
@@ -2038,6 +2066,7 @@ declare function computeAggregateLanes(nodeId: string, wiredTypes: Iterable<Aggr
2038
2066
  */
2039
2067
  type LlmTier = "economy" | "standard" | "premium";
2040
2068
  type KieApiFormat = "chat-completions" | "messages" | "responses";
2069
+ type LlmVendor = "anthropic" | "google" | "openai" | "xai";
2041
2070
  declare const LLM_REASONING_EFFORTS: readonly ["none", "low", "medium", "high", "xhigh", "max"];
2042
2071
  type LlmReasoningEffort = (typeof LLM_REASONING_EFFORTS)[number];
2043
2072
  /** Levels that bill one tier up. `high` is the Claude-family server default — it never bumps. */
@@ -2052,7 +2081,7 @@ interface LlmModelDef {
2052
2081
  * For messages: the model id sent in the body (e.g. "claude-haiku-4-5-v1messages").
2053
2082
  * For responses: the model id sent in the body (e.g. "gpt-5-4"). */
2054
2083
  kieSlugOrModel: string;
2055
- vendor: "anthropic" | "google" | "openai";
2084
+ vendor: LlmVendor;
2056
2085
  supportsImages: boolean;
2057
2086
  maxOutputTokens: number;
2058
2087
  /**
@@ -2138,7 +2167,34 @@ declare const LLM_MODEL_IDS: string[];
2138
2167
  * Single source of truth so the picker, the config panel, and the route gate
2139
2168
  * can't drift. */
2140
2169
  declare const STRUCTURED_VISION_MODELS: LlmModelDef[];
2141
- type LlmFeature = "ai-writer" | "llm-chat" | "prompt-helper" | "scene-graph-ai" | "after-effects" | "motion-graphics" | "motion-graphics-lottie" | "lottie-overlay" | "3d-title" | "image-to-text" | "describe-to-picker" | "qa-check" | "generate-script" | "translate" | "image-critic" | "pick-best-llm";
2170
+ /**
2171
+ * Vendor presentation order + labels for model pickers. Every LlmVendor MUST
2172
+ * appear in the order list (guarded by a registry test) so a new vendor can't
2173
+ * ship with its models silently sorted to the end of every menu unlabeled.
2174
+ * Alphabetical on purpose: stable, and no vendor-preference fights.
2175
+ */
2176
+ declare const LLM_VENDOR_ORDER: readonly LlmVendor[];
2177
+ declare const LLM_VENDOR_LABELS: Record<LlmVendor, string>;
2178
+ interface LlmModelGroup {
2179
+ vendor: LlmVendor;
2180
+ /** Display heading for the group (LLM_VENDOR_LABELS[vendor]). */
2181
+ label: string;
2182
+ models: LlmModelDef[];
2183
+ }
2184
+ /**
2185
+ * The ONE ordering every LLM model menu renders: grouped by vendor (in
2186
+ * LLM_VENDOR_ORDER), and inside each group sorted economy → standard → premium
2187
+ * (registry order breaks ties, which keeps family generations adjacent).
2188
+ * A flat registry-order dump was genuinely hard to scan at 17 models — every
2189
+ * picker (config panel, quick strips, quick toolbar) derives from this so the
2190
+ * menus can't drift apart. Groups with no models (after `filter`) are omitted.
2191
+ */
2192
+ declare function groupLlmModelsByVendor(models?: readonly LlmModelDef[]): LlmModelGroup[];
2193
+ /** {@link groupLlmModelsByVendor} flattened — for menus that can't render
2194
+ * group headers (e.g. the compact node quick strips) but should still read
2195
+ * vendor-clustered and tier-ordered. */
2196
+ declare function orderedLlmModels(models?: readonly LlmModelDef[]): LlmModelDef[];
2197
+ type LlmFeature = "ai-writer" | "llm-chat" | "prompt-helper" | "scene-graph-ai" | "after-effects" | "motion-graphics" | "motion-graphics-lottie" | "lottie-overlay" | "3d-title" | "image-to-text" | "describe-to-picker" | "qa-check" | "generate-script" | "translate" | "image-critic" | "pick-best-llm" | "workflow-copilot";
2142
2198
  /** Engine-dependent LlmFeature for the motion-graphics node (design §8: every credit-id site must branch on engine). */
2143
2199
  declare function motionGraphicsFeature(engine?: string): LlmFeature;
2144
2200
  /** Feature → default model when user hasn't selected one */
@@ -2763,63 +2819,30 @@ declare function settledWithLimit<T>(tasks: (() => Promise<T>)[], limit: number,
2763
2819
  }): Promise<PromiseSettledResult<T>[]>;
2764
2820
 
2765
2821
  /**
2766
- * Surround continuation — shared single source of truth.
2822
+ * Surround continuation — the shared WIRE CONTRACT.
2767
2823
  *
2768
2824
  * The Location 360° "look-around" builds each ring view (45°, 90°, …) as an
2769
- * image-to-image continuation of the previous view. The platform forces
2770
- * geometric continuity by handing the model a half-done frame: one edge holds
2771
- * the previous view's carried pixels, the rest is flat gray, and the model is
2772
- * asked to paint the gray region.
2773
- *
2774
- * This module owns the bits that are pure and reused across the route Zod
2775
- * schema, the SDK input type, and the worker: the direction enum, the carried
2776
- * fraction defaults, and the fill prompt. The geometry math + sharp compositing
2777
- * + color harmonization live backend-side (they need `sharp`).
2778
- */
2779
- /**
2780
- * The carry/paint axis for a continuation.
2781
- *
2782
- * PAN (horizontal — half-carry continuation):
2783
- * - `right` — turning right: the new frame's LEFT edge continues the previous
2784
- * view's RIGHT edge, so the carried band sits on the LEFT, painted on the RIGHT.
2785
- * - `left` — turning left: the new frame's RIGHT edge continues the previous
2786
- * view's LEFT edge, so the carried band sits on the RIGHT, painted on the LEFT.
2787
- * (Mirror of `right`. Lets studio chain BOTH ways from a keyframe, capping
2788
- * chain depth so quality doesn't compound down a long one-way chain.)
2789
- *
2790
- * TILT (vertical — thin-strip, subject-driven re-render):
2791
- * - `up` — tilting straight up: render the open SKY overhead. A thin strip of
2792
- * the establishing shot's TOP edge is carried into the new frame's BOTTOM for
2793
- * a soft horizon transition; the rest is painted as sky (NOT a mirrored
2794
- * landscape).
2795
- * - `down` — tilting straight down: render the GROUND below. A thin strip of the
2796
- * BOTTOM edge is carried into the new frame's TOP.
2825
+ * image-to-image continuation of the previous one.
2826
+ *
2827
+ * This module owns only what the route Zod schema, the SDK input type, and the
2828
+ * worker all need to agree on: the direction enum and the carried-fraction
2829
+ * defaults. The fill prompt lives in `@nodaro/prompts` (never published) and
2830
+ * the compositing/harmonization engine is private.
2831
+ */
2832
+ /**
2833
+ * The camera move a continuation represents: `right` / `left` pan the view
2834
+ * horizontally, `up` / `down` tilt it vertically.
2797
2835
  */
2798
2836
  declare const SURROUND_DIRECTIONS: readonly ["right", "left", "up", "down"];
2799
2837
  type SurroundDirection = (typeof SURROUND_DIRECTIONS)[number];
2800
- /** Half the frame is carried for a horizontal pan (matches studio's composite). */
2838
+ /** Default carried fraction for a horizontal pan. */
2801
2839
  declare const DEFAULT_CARRIED_FRACTION = 0.5;
2802
- /**
2803
- * Tilts carry only a thin horizon strip. Carrying half of a horizontal frame is
2804
- * exactly what makes the model echo/mirror the landscape vertically instead of
2805
- * rendering what's actually overhead/underfoot — so tilts keep the carry small
2806
- * and let the tilt prompt drive the subject.
2807
- */
2840
+ /** Default carried fraction for a vertical tilt. */
2808
2841
  declare const TILT_CARRIED_FRACTION = 0.12;
2809
2842
  /** True for the vertical tilt directions (up/down), false for the pans. */
2810
2843
  declare function isTiltDirection(direction: SurroundDirection): boolean;
2811
2844
  /** The carried fraction the platform uses when the caller doesn't pin one. */
2812
2845
  declare function defaultCarriedFraction(direction: SurroundDirection): number;
2813
- /**
2814
- * Build the fill prompt the model receives alongside the half-carry composite.
2815
- *
2816
- * `userPrompt` (an optional scene hint from the caller) is woven in front. PAN
2817
- * directions get the seamless-continuation prompt (with the anti-golden-hour
2818
- * negative that fights the documented warm-regrade drift). TILT directions get a
2819
- * subject-forcing prompt — render the sky / ground overhead / below, explicitly
2820
- * NOT a mirrored landscape — which is what stops the vertical echo.
2821
- */
2822
- declare function buildSurroundFillPrompt(direction: SurroundDirection, userPrompt?: string): string;
2823
2846
 
2824
2847
  /**
2825
2848
  * The 5 parameter-picker node types that can wire INTO the Object Studio's
@@ -3312,8 +3335,6 @@ interface LanguageDefinition {
3312
3335
  readonly shortCode: string;
3313
3336
  /** Reading direction. */
3314
3337
  readonly dir: LocaleDirection;
3315
- /** Optional flag emoji for visual recognition. */
3316
- readonly flag: string;
3317
3338
  }
3318
3339
  /**
3319
3340
  * Master language registry. Order = display order in the language picker
@@ -4772,6 +4793,44 @@ interface WorkflowExportLocation {
4772
4793
  canonicalDescription?: string | null;
4773
4794
  styleLock?: boolean | null;
4774
4795
  }
4796
+ /** A media URL referenced from a node's data, located by node + field path. */
4797
+ interface WorkflowMediaRef {
4798
+ nodeId: string;
4799
+ nodeLabel?: string;
4800
+ /** Dot/bracket path inside `node.data`, e.g. `imageUrl` or `referenceImageUrls[1]`. */
4801
+ field: string;
4802
+ url: string;
4803
+ }
4804
+ /**
4805
+ * Export-time portability analysis (#866). A bundle exported from a private
4806
+ * host carries media URLs only that host can serve (`http://localhost:3000/
4807
+ * storage/…`, a LAN address, a `.internal` name); imported anywhere else, the
4808
+ * nodes fail at Run time with an opaque provider fetch error. The exporter
4809
+ * lists those URLs here so the person exporting is told BEFORE sharing, and
4810
+ * an importer can explain what will not load. Absent when every media URL is
4811
+ * publicly routable.
4812
+ */
4813
+ interface WorkflowPortability {
4814
+ unreachableMedia: WorkflowMediaRef[];
4815
+ }
4816
+ /**
4817
+ * What the importer did about the bundle's media (#866). Publicly reachable
4818
+ * media that is not already on the importing instance's own storage is
4819
+ * copied there (`rehosted`) so the workflow runs from local copies; media on
4820
+ * a host the importer cannot reach is left as-is and listed (`unreachable`);
4821
+ * anything declined for another reason (too large, not a media type, over
4822
+ * the per-import cap, upload failed) is listed with the reason (`skipped`).
4823
+ */
4824
+ interface WorkflowImportReport {
4825
+ rehosted: number;
4826
+ unreachable: WorkflowMediaRef[];
4827
+ skipped: Array<WorkflowMediaRef & {
4828
+ reason: string;
4829
+ }>;
4830
+ /** Anything else the importer should know, e.g. copies were made but the
4831
+ * workflow could not be updated to use them. */
4832
+ notes?: string[];
4833
+ }
4775
4834
  interface WorkflowExport {
4776
4835
  version: 1;
4777
4836
  exportedAt: string;
@@ -4785,6 +4844,8 @@ interface WorkflowExport {
4785
4844
  creatures?: WorkflowExportCreature[];
4786
4845
  locations: WorkflowExportLocation[];
4787
4846
  };
4847
+ /** Present only when the bundle references media another instance cannot fetch. */
4848
+ portability?: WorkflowPortability;
4788
4849
  }
4789
4850
  /** Strip generated/transient content from nodes for template export. Returns new node objects; inputs are not mutated. */
4790
4851
  declare function stripExportContent(nodes: GenericNode[]): GenericNode[];
@@ -8208,6 +8269,24 @@ declare function getCombineTransition(id: string): CombineTransition | undefined
8208
8269
  * Throws for unknown ids — callers validate input via Zod first.
8209
8270
  */
8210
8271
  declare function resolveXfadeName(id: string): string | null;
8272
+ /**
8273
+ * Map a `transition` PARAMETER-NODE pick (the @nodaro/prompts creative
8274
+ * catalog — prose-hint transitions for AI video prompts) onto the ffmpeg
8275
+ * xfade vocabulary above. The two vocabularies are deliberately different
8276
+ * (the picker describes shots, this table describes blends); only the
8277
+ * visually-faithful subset maps — everything else falls back to `cut`.
8278
+ *
8279
+ * Consumed by the slideshow node (its transition TYPE comes from a wired
8280
+ * transition parameter node; unwired defaults to cut). Kept here — not in
8281
+ * @nodaro/prompts — because the dependency points prompts → shared, and the
8282
+ * ids are plain strings on both sides.
8283
+ */
8284
+ declare const PICKER_TO_COMBINE_TRANSITION: Readonly<Record<string, string>>;
8285
+ /**
8286
+ * Resolve ANY transition string a slideshow may receive — a combine id
8287
+ * (already valid), a picker id (mapped), or anything else (→ cut).
8288
+ */
8289
+ declare function resolveSlideshowTransition(value: string | undefined | null): string;
8211
8290
 
8212
8291
  /**
8213
8292
  * Curated subset of FFmpeg `acrossfade=curve=...` options for combine-videos
@@ -8308,6 +8387,20 @@ declare const AUDIO_PRODUCER_TYPES: ReadonlySet<string>;
8308
8387
  */
8309
8388
  declare const FAN_OUT_EACH_TYPES: ReadonlySet<string>;
8310
8389
 
8390
+ /**
8391
+ * Node types whose output carries Suno chaining ids (`sunoTrackId` /
8392
+ * `sunoTaskId`) for a downstream Suno node (extend / separate / replace /
8393
+ * add-vocals / …) to chain off.
8394
+ *
8395
+ * One set for the three readers — the canvas resolver, the orchestrator
8396
+ * resolver, and the config panels' "Inherited" hint (#819). They used to keep
8397
+ * their own copies and drifted: the canvas read ids off a `suno-separate`
8398
+ * (whose output is stems, not a track) while the orchestrator ignored it, so
8399
+ * the same graph resolved on one path and not the other. Structural
8400
+ * vocabulary only — node type names, no prompt content.
8401
+ */
8402
+ declare const SUNO_TRACK_SOURCE_TYPES: ReadonlySet<string>;
8403
+
8311
8404
  /**
8312
8405
  * ElevenLabs speech-to-speech (voice changer) models — single source of truth
8313
8406
  * for the Voice Changer node's model picker (frontend config panel) AND the
@@ -9250,9 +9343,9 @@ declare const windowSceneSchema: z.ZodObject<{
9250
9343
  "eye-level": "eye-level";
9251
9344
  high: "high";
9252
9345
  low: "low";
9253
- overhead: "overhead";
9254
9346
  pov: "pov";
9255
9347
  dutch: "dutch";
9348
+ overhead: "overhead";
9256
9349
  "worms-eye": "worms-eye";
9257
9350
  "over-the-shoulder": "over-the-shoulder";
9258
9351
  profile: "profile";
@@ -9354,9 +9447,9 @@ declare const windowAnalysisSchema: z.ZodObject<{
9354
9447
  "eye-level": "eye-level";
9355
9448
  high: "high";
9356
9449
  low: "low";
9357
- overhead: "overhead";
9358
9450
  pov: "pov";
9359
9451
  dutch: "dutch";
9452
+ overhead: "overhead";
9360
9453
  "worms-eye": "worms-eye";
9361
9454
  "over-the-shoulder": "over-the-shoulder";
9362
9455
  profile: "profile";
@@ -9427,9 +9520,9 @@ declare const analyzedSceneSchema: z.ZodObject<{
9427
9520
  "eye-level": "eye-level";
9428
9521
  high: "high";
9429
9522
  low: "low";
9430
- overhead: "overhead";
9431
9523
  pov: "pov";
9432
9524
  dutch: "dutch";
9525
+ overhead: "overhead";
9433
9526
  "worms-eye": "worms-eye";
9434
9527
  "over-the-shoulder": "over-the-shoulder";
9435
9528
  profile: "profile";
@@ -9541,9 +9634,9 @@ declare const videoAnalysisResultSchema: z.ZodObject<{
9541
9634
  "eye-level": "eye-level";
9542
9635
  high: "high";
9543
9636
  low: "low";
9544
- overhead: "overhead";
9545
9637
  pov: "pov";
9546
9638
  dutch: "dutch";
9639
+ overhead: "overhead";
9547
9640
  "worms-eye": "worms-eye";
9548
9641
  "over-the-shoulder": "over-the-shoulder";
9549
9642
  profile: "profile";
@@ -9727,14 +9820,12 @@ declare function inferMusicVideo(analysis: {
9727
9820
  * `buildVideoAnalysisCreditId` + `/v1/credits/model-cost`) all derive from
9728
9821
  * these.
9729
9822
  *
9730
- * The measured-rate constants and the $-derived `videoAnalysisBucketCredits`
9731
- * formula that GENERATE these numbers live PRIVATELY in the
9732
- * `@nodaroai/cloud-plugins` package (`src/plugins/video-analysis/cost.ts`)
9733
- * never in this public repo. They were first moved out of this package
9734
- * (published Apache-2.0 on npm) per the 2026-07-06 public-flip IP audit S5,
9735
- * then out of the app repo entirely alongside the rest of the video-analysis
9736
- * node. A cross-check test in that private package guards this table so the
9737
- * public numbers can't silently drift from the formula.
9823
+ * The rate constants and the formula that GENERATE these numbers live
9824
+ * PRIVATELY in the `@nodaroai/cloud-plugins` package never in this public
9825
+ * repo. They were first moved out of this package (published Apache-2.0 on
9826
+ * npm), then out of the app repo entirely alongside the rest of the
9827
+ * video-analysis node. A cross-check test in that private package guards
9828
+ * this table so the public numbers can't silently drift from the formula.
9738
9829
  *
9739
9830
  * `VIDEO_ANALYSIS_BUCKET_CREDITS` below is the precomputed OUTPUT of that
9740
9831
  * private formula for every (model × bucket) combination — a plain credit
@@ -9742,9 +9833,8 @@ declare function inferMusicVideo(analysis: {
9742
9833
  * `VIDEO_CLIP_CREDITS` uses in `film-pricing.ts`. It is what the frontend's
9743
9834
  * client-side cost preview (`estimateNodeCredits` in
9744
9835
  * workflow-editor/types.ts) reads instead of calling the formula directly.
9745
- * The formula's own test in `@nodaroai/cloud-plugins`
9746
- * (`src/plugins/video-analysis/__tests__/cost.test.ts`) cross-checks this table
9747
- * against it and fails on drift. There is deliberately NO app-side formula to
9836
+ * The formula's own test in `@nodaroai/cloud-plugins` cross-checks this
9837
+ * table against it and fails on drift. There is deliberately NO app-side formula to
9748
9838
  * check against — it was moved private in 2026-07 and the old backend test
9749
9839
  * went with it.
9750
9840
  *
@@ -9789,7 +9879,7 @@ declare function videoAnalysisNumWindows(bucketSec: number): number;
9789
9879
  * Precomputed credit cost for the `video-audit` node ("AI Audit") — the same
9790
9880
  * pattern as `VIDEO_ANALYSIS_BUCKET_CREDITS` above: the OUTPUT of the private
9791
9881
  * `videoAuditBucketCredits` formula in `@nodaroai/cloud-plugins`
9792
- * (`src/plugins/video-analysis/cost.ts`), a plain lookup table never a
9882
+ * (in the plugin repo), a plain lookup table never a
9793
9883
  * formula, cross-checked against that package's own cost test. Shares the
9794
9884
  * SAME duration-bucket ladder as video-analysis (`VIDEO_ANALYSIS_DURATION_BUCKETS`
9795
9885
  * / `pickVideoAnalysisBucket`) — the audit re-watches the same clip, so it
@@ -9816,7 +9906,7 @@ declare function videoAnalysisNumWindows(bucketSec: number): number;
9816
9906
  * `buildVideoAnalysisCreditId`.
9817
9907
  *
9818
9908
  * Values pasted verbatim from the plugin generator's output
9819
- * (`scripts/gen-va-buckets.mjs`) at `@nodaroai/cloud-plugins` v0.102.0
9909
+ * (the plugin repo's bucket generator)
9820
9910
  * never hand computed. The plugin's cost test cross-checks every row.
9821
9911
  */
9822
9912
  declare const VIDEO_AUDIT_BUCKET_CREDITS: Record<string, number>;
@@ -9853,21 +9943,14 @@ declare function videoAuditCreditsForBucket(bucketSec: number, auto: boolean): n
9853
9943
  declare function bucketSecondsFromAuditCreditId(id: string): number | null;
9854
9944
 
9855
9945
  /**
9856
- * Smart-cut best-pair SEARCH WINDOWS — the shared bound + clamp for
9946
+ * Smart-cut SEARCH WINDOWS — the shared bound + clamp for
9857
9947
  * generate-video-pro's `smartCutFramesPrev` / `smartCutFramesNext`.
9858
9948
  *
9859
- * What they do: the best-pair matcher (the mode the node calls "legacy-8x8")
9860
- * PSNR-compares the last N frames of a segment against the first M of the
9861
- * next, ends the previous clip ON the best match and starts the next right
9862
- * AFTER its twin so the duplicated frame plays once and motion stays
9863
- * continuous. N and M are those windows. Absent the engine's own 8/8
9864
- * default, which is byte-identical to the behavior before they were
9865
- * exposed.
9866
- *
9867
- * Why wider helps: a continuation can re-enact a longer stretch of the
9868
- * previous tail than 8 frames covers, and a match outside the window is
9869
- * simply never found — the boundary silently falls back to the fixed
9870
- * freeze-trims. recast pins 24/24 for exactly this reason.
9949
+ * They bound how much of each side of a boundary the engine considers when
9950
+ * it places the cut: N frames from the end of a segment and M from the start
9951
+ * of the next. Absent the engine's own default, byte-identical to the
9952
+ * behavior before they were exposed. A boundary the engine cannot resolve
9953
+ * inside the window falls back to the fixed freeze-trims; recast pins 24/24.
9871
9954
  *
9872
9955
  * Why a shared clamp: the canvas node (single-node Run) and the orchestrator
9873
9956
  * (workflow Run) are two independent send paths into the same engine route,
@@ -9876,10 +9959,8 @@ declare function bucketSecondsFromAuditCreditId(id: string): number | null;
9876
9959
  * request instead of 400-ing an entire multi-segment run at finalize time —
9877
9960
  * and the two paths cannot drift apart.
9878
9961
  */
9879
- /** Widest window the UI offers. The engine route itself accepts up to 48;
9880
- * 24 is the product cap it already covers a full second of re-enactment
9881
- * at 24fps, and every frame added past the real overlap only costs match
9882
- * time and invites a spurious pairing. */
9962
+ /** Widest window the UI offers (the engine route itself accepts up to 48).
9963
+ * Past this, added frames only cost search time and invite a false match. */
9883
9964
  declare const SMART_CUT_WINDOW_MAX = 24;
9884
9965
  /** Narrowest meaningful window — one frame each side. */
9885
9966
  declare const SMART_CUT_WINDOW_MIN = 1;
@@ -9912,4 +9993,331 @@ interface HintGraphContext {
9912
9993
  readonly edges: ReadonlyArray<HintEdgeLike>;
9913
9994
  }
9914
9995
 
9915
- export { ACTIVE_SCENE_HELPERS, ADVANCED_MODE_UNAVAILABLE_REASON, AGGREGATEABLE_TYPES, AGGREGATE_LANE_SOURCE_TYPES, AI_AVATAR_DURATION_BUCKETS, AI_AVATAR_MAX_AUDIO_SEC, AI_AVATAR_MAX_DURATION_SEC, AI_AVATAR_RESERVE_IDS, AI_WRITER_PROVIDERS, ALA_CARTE_BOARDS, ALL_CAPTION_STYLES, ANIMALS, ANIMAL_SUBCATEGORY_LABELS, ANIMAL_SUBCATEGORY_ORDER, ASPECT_RATIO_DIMENSIONS, AUDIO_ADDON_PROVIDERS, AUDIO_CROSSFADE_CURVES, AUDIO_CROSSFADE_CURVE_IDS, AUDIO_FX_PRESETS, AUDIO_FX_PRESET_LABELS, AUDIO_FX_PRESET_SET, AUDIO_FX_REVERB_PRESETS, AUDIO_PRODUCER_TYPES, type AddBRollResult, AddBRollResultSchema, type AggregateableType, type AggregationBuckets, type AiAvatarDurationBucket, type AiAvatarEngine, type AiAvatarResolution, type AiWriterProvider, type AlaCarteBoard, type AnalyzedScene, type AnchorSceneStyleResult, AnchorSceneStyleResultSchema, type Animal, type AnimalSubcategory, type AssetRef, AssetRefSchema, type AudioCrossfadeCurve, type AudioFxPreset, type AudioLayer, type AuditImagesResult, AuditImagesResultSchema, type AuditImagesShotEntry, AuditImagesShotEntrySchema, AuditPromptIssueSchema, type AuditPromptResult, AuditPromptResultSchema, AvatarPayloadError, BOARD_TO_ASSET_TYPE, BOARD_TO_COLUMN, BOARD_VARIANTS, type BoardEntityKind, type BoardPromptContext, type BoardTemplate, BridgeToNextSceneInputSchema, type BridgeToNextSceneResult, BridgeToNextSceneResultSchema, type BrowseCommunityParams, type BrowseCommunityResult, CATEGORY_DURATION_DEFAULTS, CHARACTER_ASPECT_DEFAULTS, CHARACTER_ASPECT_OPTIONS, CHARACTER_ASSET_TYPES, CHARACTER_ASSET_VARIANTS, CHARACTER_ATTACH_COLUMNS, CHARACTER_FACETS, CHARACTER_FACET_IDS, CHARACTER_LORA_TRAINING_JOB_TYPE, CHARACTER_MOTION_PROVIDERS, CHARACTER_PICKER_DISPLAY_ORDER, CHARACTER_REFERENCE_PHOTO_KINDS, CHARACTER_STYLES, CHARACTER_VARIANT_ASSET_BUCKETS, CHAT_ENABLED_STAGES, CHAT_STAGES, CHAT_TURN_CAPS, CHAT_WIRED_STAGES, CINEMATIC_DEFAULT_DURATION_SEC, CINEMATIC_DEFAULT_RESOLUTION, CINEMATIC_MAX_DURATION_SEC, CINEMATIC_MAX_LOOKS, CINEMATIC_MAX_REFERENCE_IMAGES, CINEMATIC_MAX_REFERENCE_VIDEOS, CINEMATIC_MIN_DURATION_SEC, CINEMATIC_MIN_LOOKS, CINEMATIC_PROMPT_MAX, CINEMATIC_RESERVE_IDS, COLLECT_IN_HANDLE, COMBINE_TRANSITIONS, COMBINE_TRANSITION_GROUP_LABELS, COMBINE_TRANSITION_GROUP_ORDER, COMBINE_TRANSITION_IDS, COMPOSER_PLAN_FIELDS, COMPOSER_PLAN_MAP, CONTENT_TYPES_BY_PLATFORM, CREATURE_ATTACH_COLUMNS, CREDIT_BASE_USD, CREDIT_ROUNDING_RESOLUTION, type CaptionStyle, type CastCoverageCriticVerdict, CastCoverageCriticVerdictSchema, type CharacterAspectRatio, type CharacterAssetType, type CharacterAssetTypeForAspect, type CharacterAttachColumn, type CharacterDef, type CharacterFacet, type CharacterImageCriticVerdict, CharacterImageCriticVerdictSchema, type CharacterLoraFields, type CharacterMentionTokenInfo, CharacterMetadataSchema, type CharacterMotionProvider, type CharacterReferencePhoto, type CharacterReferencePhotoKind, type CharacterVariantAssetBucket, type CharacterVariantAssetItem, type CharacterVoiceSpec, type ChatEnabledStage, type ChatTurnResponse, ChatTurnResponseSchema, type CinematicResolution, type ClipLook, type CloneListingResult, type CombineTransition, type CombineTransitionGroup, type CombineVideosEstimatorInput, type CommunityCard, type CommunityEntityType, type CommunityFullDetail, type CommunityReportReason, type CommunitySort, type ComponentHandle, type ComponentMetadata, type ConnectedReference, type CreatureAttachColumn, CriticIssueSchema, type CustomEntry, DEFAULT_AUDIO_CROSSFADE_CURVE_ID, DEFAULT_CARRIED_FRACTION, DEFAULT_CHARACTER_ANGLE_COUNT, DEFAULT_CHARACTER_EXPRESSION_COUNT, DEFAULT_CHARACTER_FACET, DEFAULT_LABEL_BY_SOURCE, DEFAULT_LOCATION_USAGE_MODE, DEFAULT_PANEL_COUNT, DEFAULT_REF_IMAGE_MAX, DEFAULT_SECTIONS, DEFAULT_USAGE_MODE, DEFAULT_VIDEO_ANALYSIS_MODEL, DEFAULT_VIDEO_ANALYSIS_TIER, DEFAULT_VIDEO_CLIP_COST, DEFAULT_VIDEO_DURATION_SEC, DEFAULT_VIDEO_PROVIDER, DEFAULT_VOICE_CHANGER_MODEL, DEFAULT_VOICE_DESIGN_MODEL, DETAIL_VARIANTS, DURATION_PRICED_PROVIDERS, DYNAMIC_PRODUCER_TYPES, type DetectionResult, DetectionResultSchema, type DialogueLine, EFFORT_TIER_BUMP, EMOTIONAL_BEAT, ENTITY_ASPECT_DEFAULTS, ENTITY_IMAGE_HANDLE_TYPES, ENTITY_SECTIONS, ENTITY_STATUSES, ENTITY_TOOL_RETRY_CAP, ENTITY_TYPES, EXECUTION_DATA_KEYS, EXTEND_VIDEO_PROVIDERS, type EntityKind, type EntityMetadata, EntityMetadataSchema, type EntityReferenceInput, type EntityRejectInput, EntityRejectInputSchema, type EntitySlot, type EntityStaleEvent, EntityStaleEventSchema, type EntityStateChangeEvent, EntityStateChangeEventSchema, type EntityStatus, type EntityStudioKind, type EntityStyle, type EntityType, type EvaluateConditionOptions, type ExportedPreset, type ExposableField, type ExposableOutput, type ExposedSetting, type ExtendVideoProvider, type ExtraRefCharacterContext, type ExtraRefInput, FACE_SWAP_PROVIDERS, FAL_LIP_SYNC_PROVIDERS, FAN_OUT_EACH_TYPES, FEATURED_ENTITIES, FILM_BASE_CREDITS, FLEXIBLE_INPUT_LIP_SYNC_PROVIDERS, FLUX2_RES_MP, FLUX_LORA_CHARACTER_MODEL_ID, FRAME_MODE_ADAPTIVE_ONLY_ASPECT, FRAME_TARGET_HANDLES, FREECUT_EXPORT_COMPLETE, FREECUT_EXPORT_PROGRESS, FREECUT_READY, FREECUT_REQUEST_IMPORT, FURNITURE, FURNITURE_SUBCATEGORY_LABELS, FURNITURE_SUBCATEGORY_ORDER, type FaceSwapProvider, type FavoriteListingResult, type FeaturedEntity, type FilmCreditEstimate, type FilterListCondition, type FilterListOperator, type FilterOperator, type FixContinuityInput, FixContinuityInputSchema, type FixContinuityResult, FixContinuityResultSchema, type Flux2Model, type FreecutExportCompletePayload, type FreecutExportProgressPayload, type FreecutImportFile, type FreecutRequestImportPayload, type FullSelectorMode, type Furniture, type FurnitureSubcategory, GENERATE_TEXT_DELIMITER, GLOBAL_MAX_DURATION_SECONDS, GROUP_HANDLE_PREFIX, GUIDANCE_SCALE_SUPPORT, GVP_ANCHOR_CHOICES, GVP_DEFAULT_PROVIDER, GVP_END_FRAME_PROVIDERS, GVP_EXTEND_PROVIDERS, GVP_SUPPORTED_PROVIDERS, GenerateMotionInputSchema, type GenerateMotionResult, GenerateMotionResultSchema, type GenericEdge, type GenericNode, type GvpAnchorChoice, type GvpAnchorWireMode, HANDLE_PORT_SEPARATOR, HELPERS_SHIPPED_IN_1B3, HIGH_QUALITY_PROVIDERS, HINT_EXEMPT_PARAMETER_TYPES, type HintEdgeLike, type HintGraphContext, type HintNodeLike, type I18nCatalogId, I2I_MASK_SUPPORT, I2I_STRENGTH_SUPPORT, IDEOGRAM_PROVIDERS, IMAGE_CRITIC_LEAF_MODES, IMAGE_CRITIC_MAX_RETRIES, IMAGE_CRITIC_METADATA_KEYS, IMAGE_CRITIC_MIN_ADHERENCE_SCORE, IMAGE_CRITIC_MODES, IMAGE_CRITIC_UNRESOLVABLE, IMAGE_EDIT_PROVIDERS, IMAGE_GEN_PROVIDERS, IMAGE_I2I_PROVIDERS, IMAGE_MASK_MODE, IMAGE_PROMPT_MAX, IMAGE_REF_TYPES, IMAGE_TO_VIDEO_PROVIDERS, INPUT_FIELD_MAP, INPUT_NODE_TYPES, INSTAGRAM_CAROUSEL_MAX_ITEMS, INSTAGRAM_CAROUSEL_MIN_ITEMS, ITER_CLONE_PATTERN, type IdentityFidelity, type IdentityMeta, type ImageCriticIssue, ImageCriticIssueSchema, type ImageCriticLeafMode, type ImageCriticMetadataKey, type ImageCriticMode, type ImageCriticNodeIssue, type ImageCriticResult, ImageCriticResultSchema, type ImageCriticVerdict, ImageCriticVerdictSchema, type ImageEditProvider, type ImageGenProvider, type ImageI2IProvider, type ImageMaskMode, type ImageToVideoProvider, type ImprovePromptInput, ImprovePromptInputSchema, type ImprovePromptResult, ImprovePromptResultSchema, type InputFieldSchema, type JsonEvalResult, type JsonFilter, type JsonPatch, KEYFRAME_CREDITS_PER_SHOT, KINETIC_CAPTION_STYLES, type KieApiFormat, type KineticCaptionStyle, LANGUAGES, LEGACY_LOTTIE_HOST_REMAP, LIP_SYNC_DURATION_BUCKETS, LIP_SYNC_MAX_AUDIO_SECONDS, LIP_SYNC_PROVIDERS, LLM_FEATURE_DEFAULTS, LLM_MODALITY_CAPS, LLM_MODELS, LLM_MODEL_IDS, LLM_REASONING_EFFORTS, LLM_ROUTE_DEFAULTS, LLM_TEXT_INPUT_MAX, LOCATION_ASSET_TYPES, LOCATION_ASSET_VARIANTS, LOCATION_ATMOSPHERE_PROVIDERS, LOCATION_ATTACH_COLUMNS, LOCATION_BUCKET_TO_CATALOG_ID, LOCATION_PRESET_TO_CATALOG, LOCATION_REFERENCE_PHOTO_KINDS, LOCATION_REFERENCE_PHOTO_KIND_LABELS, LOCATION_USAGE_MODES, LOTTIE_OVERLAY_CATALOG, LOTTIE_SLOT_FIELD_PREFIX, type LabeledOption, type LipSyncDurationBucket, type LipSyncProvider, type LlmFeature, type LlmModelDef, type LlmReasoningEffort, type LlmRouteDefaults, type LlmTier, type LocaleCatalogMap, type LocaleDirection, type LocaleId, type LocationAssetType, type LocationAtmosphereProvider, type LocationAttachColumn, type LocationCatalogRef, type LocationImageCriticVerdict, LocationImageCriticVerdictSchema, type LocationMentionTokenInfo, LocationMetadataSchema, type LocationReferencePhotoKind, type LocationUsageMode, LocationsCoverageCriticIssueSchema, type LocationsCoverageCriticVerdict, LocationsCoverageCriticVerdictSchema, type LoopTrimEstimatorInput, type LoopVideoEstimatorInput, type LoraEligibleRef, type LoraRouting, type LottieOverlayCatalogEntry, type LottieSlotField, MAX_CUSTOM_ENTRIES_PER_BOARD, MAX_IMAGE_PROMPT_CHARS_BY_PROVIDER, MAX_LOCATION_VARIANTS, MAX_NEGATIVE_PROMPT_CHARS_BY_PROVIDER, MAX_PANELS_PER_SHEET, MAX_TTS_CHARS_BY_PROVIDER, MAX_VIDEO_PROMPT_CHARS_BY_PROVIDER, MINIMAX_H3_DEFAULT_RESOLUTION, MINIMAX_H3_PROVIDERS, MODELS_WITH_REFERENCE_IMAGE_SUPPORT, MODEL_CATALOG, MODEL_PARAM_NODE_TYPES, MODEL_RECOMMENDATIONS, MODIFY_IMAGE_PROVIDERS, MOTION_COLUMN, MOTION_TRANSFER_PROVIDERS, MUSIC_PROVIDERS, type MaskRegionDescriptor, type MatchCutVerdict, MatchCutVerdictSchema, type Member, type MinimalEdge, type MinimalNode, type ModelCatalogEntry, type ModelInputAdjustment, type ModelKind, type ModelMenuOption, type ModelMode, type ModelNodeTarget, type ModelPromptingStyle, type ModelRecommendation, type ModelTreeLine, type ModelTreeVariant, type ModelValidationIssue, type ModifyImageProvider, type MotionTransferProviderType, type MusicProvider, NATIVE_ADAPTIVE_ASPECT, NATIVE_NEGATIVE_PROMPT_MODELS, NATIVE_NEGATIVE_VIDEO_PROVIDERS, NEGATIVE_PROMPT_MAX, NODARO_IMPORT_FILES, NODARO_LOAD_TIMELINE, NODARO_LOAD_VIDEO, NODARO_RESET_PROJECT, NODE_DEFAULT_TYPES, NODE_MAPPABLE_FIELDS, NODE_PRESET_EXPORT_KIND, NODE_REF_PATTERN, NON_EN_LOCALE_IDS, NO_SPLIT_DELIMITER, type NodaroLoadTimelinePayload, type NodaroLoadVideoPayload, type NodeDefaultType, type NodeParamAdjustment, type NodePresetExport, type NormalizedModelInput, type NormalizedNodes, OBJECT_ASPECT_DEFAULTS, OBJECT_ASPECT_OPTIONS, OBJECT_ASSET_TYPES, OBJECT_ASSET_VARIANTS, OBJECT_ATTACH_COLUMNS, OBJECT_MOTION_PROVIDERS, OBJECT_PICKER_NODE_TYPES, OUTPUT_FIELD_MAP, OUTPUT_FORMATS, type ObjectAspectRatio, type ObjectAssetType, type ObjectAssetTypeForAspect, type ObjectAttachColumn, ObjectMetadataSchema, type ObjectMotionProvider, type ObjectsValidationIssue, type ObjectsValidationResult, OptimizeForModelInputSchema, type OptimizeForModelResult, OptimizeForModelResultSchema, type OutputFormat, type OutputMode, type OutputType, PARAMETER_NODE_TYPES, PASSTHROUGH_TYPES, PAYG_RETENTION_DAYS, PER_FORMAT_DURATION_BOUNDS, PIPELINE_ACTIVATION_MODES, PIPELINE_FORMATS, PIPELINE_HARD_TIMEOUT_MS, PIPELINE_MODEL_STAGES, PIPELINE_MODES, PIPELINE_OUTPUT_RESOLUTIONS, PIPELINE_PINNABLE_IMAGE_MODELS, PIPELINE_PINNABLE_SCRIPT_LLMS, PIPELINE_PINNABLE_VIDEO_MODELS, PIPELINE_STAGE_NAMES, PIPELINE_STAGE_TIMEOUT_MS, PIPELINE_TYPES, PLACEHOLDER_CHARACTER_NAME, PLATFORM_LABELS, PLATFORM_SPECS, PRESET_APPLY_CLEAR_KEYS, PRESET_EXCLUDED_KEYS, PRESET_LABELS, PRICING_DEFAULT_DURATION_SEC, PRICING_DEFAULT_RESOLUTION, PROMPT_HARD_CEILING, PROVIDER_DIRECTIVE_DEFAULTS, PROVIDER_PLACEHOLDER_PREFIX, type PanelGenRequest, type PanelRequest, type PanelSource, type PipelineActivationMode, type PipelineCompletedEvent, PipelineCompletedEventSchema, type PipelineConfig, PipelineConfigSchema, type PipelineDriftSummary, PipelineDriftSummarySchema, type PipelineEditorDecisionsReadyEvent, PipelineEditorDecisionsReadyEventSchema, type PipelineEvent, type PipelineForkedEvent, PipelineForkedEventSchema, type PipelineFormat, type PipelineInput, PipelineInputSchema, type PipelineLifecycleEvent, type PipelineMode, type PipelineModelStage, type PipelineMusicReadyEvent, PipelineMusicReadyEventSchema, type PipelineOutputResolution, type PipelinePinnableImageModel, type PipelinePinnableScriptLlm, type PipelinePinnableVideoModel, type PipelineStageName, PipelineStageNameSchema, type PipelineStageStatus, PipelineStageStatusSchema, type PipelineState, PipelineStateSchema, type PipelineStatus, PipelineStatusSchema, type PipelineType, type PixelBox, type PresentationItem, type PresetEntry, type PriceVariant, type ProgressSegment, type ProposedChange, type PublishListingParams, type PublishListingResult, QA_CHECK_PROVIDERS, type QaCheckProvider, type QualityLevel, REDUCE_STRATEGIES, REDUCE_STRATEGY_IDS, REFERENCE_BOARD_PROVIDERS, REFERENCE_BOARD_TEMPLATES, REFERENCE_HANDLE_MAP, REFERENCE_ROLE_PRESETS, REF_HANDLE_CATEGORY, REF_IMAGE_MAX_LIMITS, RENDERING_SPEED_SUPPORT, REPEATABLE_NODE_TYPES, REPEAT_PLACEHOLDER, REPLICATE_LIP_SYNC_PROVIDERS, RESERVED_TEMPLATE_VARS, type ReduceMeta, type ReduceStrategy, type ReduceStrategyId, type RefCandidate, type RefModalityEdge, type ReferenceBoardProvider, type ReferenceModality, type ReferenceSheet, type ReferenceSource, type ReportListingResult, type ResolveCharacterAspectOptions, type ResolveObjectAspectOptions, type ResolveSeparatorOptions, type ResolvedDialogueVoiceLine, type RouterConditionGroup, SCENE_HELPER_NAMES, SCRAPER_ACTOR_LABELS, SCRAPER_CREDIT_COSTS, SCRAPER_OUTPUT_FIELDS, SCRIPT_PROVIDERS, SEASONS, SECTION_BOARD, SECTION_KINDS, SEEDANCE_2_5_REF_LIMITS, SEEDANCE_2_CONTINUATION_REF_SEC, SEEDANCE_2_EXTEND_STITCH, SEEDANCE_2_PROVIDERS, SEEDANCE_2_R2V_MAX_AUDIO_SEC_BY_PROVIDER, SEEDANCE_2_R2V_MIN_REF_VIDEO_SEC, SEEDANCE_2_REF_LIMITS, SEEDANCE_LIP_SYNC_PROVIDERS, SEED_SUPPORT, SEPARATOR_DISPLAY, SEPARATOR_PRESETS, SHEET_ASPECTS, SHEET_BACKGROUNDS, SHEET_PRESETS, SHEET_SKINS, SHEET_TYPES, SHORT_FILM_ANGLE_COUNT, SHORT_FILM_EXPRESSION_COUNT, SHORT_FILM_VARIANT_THRESHOLD_SEC, SLOT_TOKEN_RE, SMART_CUT_WINDOW_DEFAULT, SMART_CUT_WINDOW_MAX, SMART_CUT_WINDOW_MIN, SOCIAL_POST_NODE_TYPES, STAGE_PATCH_SCHEMA, STATIC_CAPTION_STYLES, STRUCTURAL_SECTIONS, STRUCTURED_VISION_MODELS, SUNO_ADD_TRACK_MODELS, SUNO_FIELD_HANDLE_FIELDS, SUNO_MODELS, SUNO_TEXT_MAX, SUNO_TITLE_MAX, SUPPORTED_FONT_NAMES, SURROUND_DIRECTIONS, SWITCHX_BLOCK_FRAMES, SWITCHX_FRAME_TIERS, type SceneData, type SceneHelperName, SceneHelperNameSchema, type SceneInputMode, SceneInputModeSchema, type SceneMetadata, SceneMetadataSchema, type SceneNodeData, SceneNodeDataSchema, SceneSpecSchema, type ScraperActorId, type ScriptCriticVerdict, ScriptCriticVerdictSchema, type ScriptProvider, type Season, type SectionKind, type SelectorConfig, type SelectorFields, type SelectorMode, type SelectorPredicateOp, type SelectorResult, type SemanticAspectRatio, type SeparatorPreset, type SharedListing, type SharedVoice, type SheetAspect, type SheetBackground, type SheetCostEstimate, type SheetEntry, type SheetFlavour, type SheetGenerationPlan, type SheetPreset, type SheetPresetId, type SheetSection, type SheetSkin, type SheetTextData, type SheetType, type ShotElement, type ShotImageElement, type ShotShapeElement, type ShotSpec, ShotSpecSchema, type ShotTextElement, type ShowrunnerPlan, ShowrunnerPlanSchema, type SidecarLoader, type SlotControlDescriptor, type SlotControlKind, type SlotVariation, type SocialMediaContentType, type SocialMediaPlatform, type SocialMediaSpec, type SortDirection, type SortListOptions, type SortType, type StageAwaitingSubGateEvent, StageAwaitingSubGateEventSchema, type StaticCaptionStyle, type StoryboardCohesionCriticVerdict, StoryboardCohesionCriticVerdictSchema, type StyleDirectives, StyleDirectivesSchema, type SubGateName, SubGateNameSchema, type SunoAddTrackModel, type SunoModel, type SupportedFontName, type SurroundDirection, type Swatch, T2I_TO_I2I_VARIANT, TASK_CHAINED_EDIT_PROVIDERS, TEXT_TO_AUDIO_PROVIDERS, TEXT_TO_VIDEO_PROVIDERS, TIER_MAX_PIPELINE_COST_CREDITS, TIER_PIPELINE_PARALLELISM, TILT_CARRIED_FRACTION, TRANSCRIBE_PROVIDERS, TRANSIENT_RUNTIME_KEYS, TTS_PROVIDERS, TTS_TEXT_MAX, TWO_K_RESOLUTION_PROVIDERS, type TextToAudioProvider, type TextToVideoProvider, type TranscribeProvider, type TransitionType, TransitionTypeSchema, type TrimVideoEstimatorInput, type TtsProvider, UPSCALE_IMAGE_PROVIDERS, USAGE_MODES, type UpscaleImageProvider, type UsageMode, VARIABLES_HANDLE_ID, VARIABLE_PRICING_MODELS, VEHICLES, VEHICLE_SUBCATEGORY_LABELS, VEHICLE_SUBCATEGORY_ORDER, VEO_PROVIDERS, VIDEO_ANALYSIS_BUCKET_CREDITS, VIDEO_ANALYSIS_DEFAULT_VARIATION, VIDEO_ANALYSIS_DURATION_BUCKETS, VIDEO_ANALYSIS_DURATION_TOLERANCE_SEC, VIDEO_ANALYSIS_ENTITY_SOURCES, VIDEO_ANALYSIS_FACELESS_ANGLES, VIDEO_ANALYSIS_LEGACY_MODELS, VIDEO_ANALYSIS_LLM_MODELS, VIDEO_ANALYSIS_MAX_DURATION_SEC, VIDEO_ANALYSIS_MAX_SCENE_SEC, VIDEO_ANALYSIS_MAX_VARIATIONS, VIDEO_ANALYSIS_MIXED_TIERS, VIDEO_ANALYSIS_SHOT_ANGLES, VIDEO_ANALYSIS_SPEED_EFFECTS, VIDEO_ANALYSIS_STORY_JUMPS, VIDEO_ANALYSIS_TIERS, VIDEO_ANALYSIS_TIER_LABELS, VIDEO_ANALYSIS_TIER_ORDER, VIDEO_ANALYSIS_TIMES_OF_DAY, VIDEO_ANALYSIS_TRANSITIONS, VIDEO_ANALYSIS_VARIATION_SLUGS, VIDEO_ANALYSIS_VISUAL_EFFECTS, VIDEO_ANALYSIS_WINDOW, VIDEO_AUDIO_CAPABILITY, VIDEO_AUDIT_BUCKET_CREDITS, VIDEO_CLIP_CREDITS, VIDEO_CRITIC_CREDITS_PER_SHOT, VIDEO_CRITIC_FRAME_MODES, VIDEO_CRITIC_MAX_RETRIES, VIDEO_CRITIC_METADATA_KEYS, VIDEO_CRITIC_MIN_ADHERENCE_SCORE, VIDEO_DURATION_TIERS, VIDEO_GEN_COLLAPSED_T2V_IDS, VIDEO_GEN_PROVIDERS, VIDEO_INPUT_LIP_SYNC_PROVIDERS, VIDEO_MODEL_CAPS, VIDEO_MODE_ALIASES, VIDEO_PRODUCER_TYPES, VIDEO_PROMPT_MAX, VIDEO_PROVIDERS_REQUIRING_IMAGE, VIDEO_PROVIDERS_WITHOUT_DISPATCH, VIDEO_REF_LIMITS_BY_PROVIDER, VIDEO_TO_VIDEO_PROVIDERS, VIDEO_UPSCALE_PROVIDERS, VIDEO_UTIL_PRICING, VIDEO_VARIABLE_PRICING, VOICE_CHANGER_MODELS, VOICE_CHANGER_MODEL_IDS, VOICE_DESIGN_MODELS, type ValidateMatchCutInput, ValidateMatchCutInputSchema, type ValidateMatchCutResult, ValidateMatchCutResultSchema, type ValidationField, type Vehicle, type VehicleSubcategory, type VideoAnalysisEntitySource, type VideoAnalysisMixedTier, type VideoAnalysisModelTier, type VideoAnalysisResult, type VideoAnalysisShotAngle, type VideoAnalysisSpeedEffect, type VideoAnalysisTier, type VideoAnalysisTransition, type VideoAnalysisVisualEffect, type VideoAudioCapability, type VideoAudioMode, type VideoClipCost, type VideoCriticFrameMode, type VideoCriticMetadataKey, type VideoCriticShotFields, type VideoCriticVerdict, VideoCriticVerdictSchema, type VideoGenProvider, type VideoModeAlias, type VideoModelCapabilities, type VideoToVideoProvider, type VideoUpscaleProvider, type Voice, type VoiceChangerModel, type VoiceClone, type VoiceDesignModel, type VoiceLibraryParams, type VoiceLibraryResponse, type VoiceMatch, VoiceMatchSchema, type VoiceType, WARDROBE_VARIANTS, WEAPONS, WEAPON_SUBCATEGORY_LABELS, WEAPON_SUBCATEGORY_ORDER, type Weapon, type WeaponSubcategory, type WindowAnalysis, type WindowScene, type WorkflowExport, type WorkflowExportCharacter, type WorkflowExportCreature, type WorkflowExportLocation, type WorkflowExportObject, aggregateByType, aiAvatarReserveCreditId, analyzedSceneSchema, applyDefaultVideoSelection, applyHandleInputOverride, applyRange, applyRangeIndices, applySlots, applyVideoAudioToggle, applyVideoNegativePrompt, aspectRatioFromDims, aspectRatioOptionsByKind, aspectRatioToNumber, assembleNarratedVideoCredits, availableReasoningEfforts, bucketSecondsFromAuditCreditId, bucketSecondsFromCreditId, buildBoardPrompt, buildChildrenByParent, buildConditionVariables, buildCreditModelIdentifier, buildExpressionFromVisual, buildLipSyncCreditId, buildLlmCreditIdentifier, buildModelMenu, buildModelTree, buildMotionCreditModelIdentifier, buildNodePresetExport, buildPanelPrompt, buildProgressSegments, buildRangeLabel, buildScraperCreditId, buildSurroundFillPrompt, buildVideoAnalysisCreditId, buildVideoAuditCreditId, buildVideoCreditModelIdentifier, calculateCombinedProgress, calculateMonetizationMarkup, calculateMonetizedCost, calculateProgress, canonicalVarName, characterBoardItems, characterBucketDisplayRank, characterMentionSlug, characterMentionableAssetArrays, characterSheetRefItems, characterVariantAssetArrays, cinematicCreditId, clampCinematicDuration, clampSmartCutWindow, cleanOrphanedItems, clearImageCriticMetadata, clearVideoCriticMetadata, clipLookSchema, collectAncestorRefs, combineSameLabelRefs, computeAggregateLanes, countRefModalityEdges, creditRangesAll, creditsToUsd, decodeProviderItem, defaultCarriedFraction, defaultResolutionFor, defaultRoleForSource, defaultVideoAspectRatio, deriveLinkedFields, deriveLottieSlotFields, deriveSlotRefs, describeEdgeBehavior, describeMaskRegion, describeNodeAdjustments, describeSlotControl, dropUnknownBindings, dropUnknownSpeakers, durationsByMode, effectiveReasoningEffort, encodeProviderItem, ensureLocaleCatalogLoaded, entitySlotSchema, entryMatchesQuery, estimateCombineVideosCredits, estimateFilmCredits, estimateLoopTrimAddonCredits, estimateLoopVideoCredits, estimateScriptDurationSec, estimateSheetCost, estimateTrimVideoCredits, evaluateCondition, evaluateConditionGroup, evaluateJsonExpression, evaluateJsonPath, expandExtraRefsToConnectedReferences, expandItemsWithRepeat, extractAllGeneratedResults, extractCharacterLoraFields, extractGeneratedJsonAsList, extractPresetData, extractReferencedLabels, extractVideoDurationFromNode, fieldKeyFromHandle, filterCloneNodes, findCharacterMentionTokens, findLocationMentionTokens, findSeedance2AudioOverLimit, firstSightExtraRole, flattenItems, getAnimal, getAnimalLabel, getAspectRatioOptions, getAudioCrossfadeCurve, getCharacterFacet, getCombineTransition, getCreditRange, getDurationsForModel, getEffectiveRepeatCount, getFeaturedEntities, getFurniture, getFurnitureLabel, getInputFieldSchema, getInputNodes, getItemSortId, getLipSyncMaxAudioSeconds, getLlmModalityCaps, getLlmModel, getLlmTier, getLocaleDirection, getMaxImagePromptChars, getMaxNegativePromptChars, getMaxSunoPromptChars, getMaxSunoStyleChars, getMaxTtsChars, getMaxVideoPromptChars, getModel, getNodeLabel, getNodeResult, getOutputNodes, getOutputType, getParameterValue, getQualityOptions, getResolutionOptions, getRouteReachableNodeIds, getStrategy, getTargetField, getValidValues, getVehicle, getVehicleLabel, getVideoAudioCapability, getWeapon, getWeaponLabel, groupByFamily, groupHandleId, hasContiguousSegmentDurations, hasFeature, hexToRgbaArray, humanizeSlotSid, imageReferenceLimit, inferMusicVideo, isAggregateableType, isCharacterAspectRatio, isCollectInEdge, isDefaultSelectorConfig, isExpandedClone, isFlux2Model, isGvpSupportedProvider, isHandleInputWired, isKineticCaptionStyle, isLocationUsageMode, isMinimaxH3Provider, isObjectAspectRatio, isOversizedScene, isPaygRetentionActive, isPerSecondLipSyncProvider, isScraperActor, isSeedance2Provider, isTiltDirection, isUsageMode, isVeoProvider, isVideoAnalysisMixedTier, isVideoAnalysisTier, jsonResultToList, listBoardTemplates, listModels, listSlotSids, llmRouteDefaults, locationMentionSlug, locationReferencePhotoKindLabel, locationUsageModeLabel, mapAspectRatio, mapQuality, mapShotIntentToProviderDirectives, matchVariant, maxSegmentSecFor, maxSegmentsFor, mergeClipLook, mergeExposedSettings, migrateEdgeOutputMode, migrateToItems, minSegmentSecFor, modelIdsByKindMode, modelToNodeTarget, modelsForInputMode, modelsWithFeature, motionGraphicsFeature, normalizeLottieLayers, normalizeMinimaxH3Resolution, normalizeModelInput, normalizeNodeModelParams, normalizePinterestUrl, normalizeRoleSlug, parseAttributedDialogue, parseCharacterMentionToken, parseGroupHandle, parseHandleId, parseListExpression, parseLocationMentionToken, parseNodePresetExport, parseNodeRef, pickAiAvatarBucket, pickIds, pickLipSyncBucket, pickSwitchXFrameTier, pickVideoAnalysisBucket, planSheetGeneration, planSheetPanels, preferredInputModeForModel, presentTypes, presetDataMatches, presetEntries, qualityOptionsByKind, refHandleCategory, referenceModalityForHandle, referenceSheetCreditId, registerSidecarLoaders, renderAnalyzedScene, resolutionOptionsByKind, resolveAiAvatarCreditId, resolveAudioCrossfadeCurve, resolveCharacterAspectRatio, resolveCinematicCreditId, resolveConditionValue, resolveDefaultRole, resolveDescription, resolveDialogueVoices, resolveEffectiveSourceType, resolveEffectiveTier, resolveEntityAspect, resolveFieldMappings, resolveGvpAnchorWire, resolveImageGenCreditIdentifier, resolveIndex, resolveLabel, resolveListExpression, resolveLlmCreditId, resolveLocationFields, resolveLocationPresetCatalog, resolveLottieOverlaySrc, resolveNodeRefs, resolveObjectAspectRatio, resolvePipelineModel, resolveRelativeWindowToken, resolveScraperCreditId, resolveSelectorRefs, resolveSeparator, resolveSheetSections, resolveSourceThroughConnectedList, resolveStoredTier, resolveSwitchXCreditId, resolveVideoAnalysisModel, resolveVideoProviderForMode, resolveXfadeName, rewriteSceneBindings, rewriteSlotTokens, rewriteSpeakerSlots, rgbaArrayToHex, roleToPhrase, runSelector, sanitizeRole, searchModelVariants, seedance2AudioLimitSec, segmentDurationsFor, selectByModulo, selectByNamedKey, selectByPredicate, selectListItems, selectLoraRoutingForMentions, selectRandom, settledWithLimit, slotVariationSchema, sortCharacterEntriesForDisplay, sortListItems, sourceRefKey, spliceDelimitedRows, splitByLoopDelimiter, splitGeneratedItems, spreadJsonArrayIfSingleton, stringifyPathResults, stripExportContent, stripTransientRuntimeData, supportedDefaultDimensions, supportsAdvancedMode, supportsEndAnchor, supportsExtendRender, toConnectedReference, toConnectedReferences, togglePick, tryParseJson, unwrapUnresolvedTokens, usageModeDirective, usageModeIncludesName, usageModeLabel, usdToCredits, validateAiAvatarPayload, validateCinematicAvatarPayload, validateDurationForFormat, validateModeActivation, validateModelInput, validateNoNestedGroups, validateObjects, validateProviderForNodeType, validateSubWorkflowRoutes, variantJobId, videoAnalysisCreditSegment, videoAnalysisNumWindows, videoAnalysisResultSchema, videoAuditCreditsForBucket, videoModelCanSpeakDialogue, videoModelSupportsAudio, videoProviderRequiresImage, windowAnalysisSchema, zipMergeLists };
9996
+ /**
9997
+ * Organizations — wire contract for the second tenancy axis
9998
+ * (Organization -> Workspace -> Member).
9999
+ *
10000
+ * Lives in @nodaro/shared because SDK/MCP consumers need these enums, the
10001
+ * request schemas the API validates, and the error codes it returns. This
10002
+ * package carries the CONTRACT ONLY — no resolution logic, no presets, no
10003
+ * vocabulary, no access rule. Those are server-side.
10004
+ */
10005
+ /**
10006
+ * Selects which workspace a request LISTS from and CREATES into. It never
10007
+ * authorizes: reading, updating, deleting or running an identified object is
10008
+ * decided by that object's own workspace, so a forgotten or forged header can
10009
+ * neither widen access nor move a charge.
10010
+ *
10011
+ * Fastify lower-cases incoming header keys, hence the second constant — read
10012
+ * `req.headers[WORKSPACE_HEADER_LOWER]`, send `WORKSPACE_HEADER`.
10013
+ */
10014
+ declare const WORKSPACE_HEADER = "X-Nodaro-Workspace";
10015
+ declare const WORKSPACE_HEADER_LOWER = "x-nodaro-workspace";
10016
+ declare const ORG_KINDS: readonly ["school", "team"];
10017
+ type OrgKind = (typeof ORG_KINDS)[number];
10018
+ declare const ORG_ROLES: readonly ["owner", "admin", "member"];
10019
+ type OrgRole = (typeof ORG_ROLES)[number];
10020
+ declare const WORKSPACE_ROLES: readonly ["admin", "member"];
10021
+ type WorkspaceRole = (typeof WORKSPACE_ROLES)[number];
10022
+ declare const MEMBER_STATUSES: readonly ["active", "suspended"];
10023
+ type MemberStatus = (typeof MEMBER_STATUSES)[number];
10024
+ /** `pending` = created, awaiting platform-admin approval. */
10025
+ declare const ORG_STATUSES: readonly ["pending", "active", "suspended", "deleted"];
10026
+ type OrgStatus = (typeof ORG_STATUSES)[number];
10027
+ /** An explicit per-workflow grant (works for personal workflows too). */
10028
+ declare const COLLABORATOR_ROLES: readonly ["editor", "viewer"];
10029
+ type CollaboratorRole = (typeof COLLABORATOR_ROLES)[number];
10030
+ declare const WORKFLOW_VISIBILITIES: readonly ["private", "workspace"];
10031
+ type WorkflowVisibility = (typeof WORKFLOW_VISIBILITIES)[number];
10032
+ /** What an identity may do with a workflow, strongest first. */
10033
+ declare const ACCESS_LEVELS: readonly ["own", "edit", "view", "none"];
10034
+ type AccessLevel = (typeof ACCESS_LEVELS)[number];
10035
+ /** The access a setting may grant to a non-creator. */
10036
+ declare const GRANTED_ACCESS: readonly ["view", "edit"];
10037
+ type GrantedAccess = (typeof GRANTED_ACCESS)[number];
10038
+ declare const SUBMISSION_STATUSES: readonly ["submitted", "in_review", "returned", "approved"];
10039
+ type SubmissionStatus = (typeof SUBMISSION_STATUSES)[number];
10040
+ /**
10041
+ * Error codes the organization endpoints add to the standard envelope
10042
+ * (`{ error: { code, message } }`). Clients dispatch on the code, never on
10043
+ * the message text.
10044
+ */
10045
+ declare const ORG_ERROR_CODES: readonly ["not_a_member", "insufficient_role", "org_not_active", "member_suspended", "workspace_archived", "personal_space_disabled", "token_workspace_mismatch", "run_requires_authenticated_member", "budget_exceeded", "member_cap_exceeded", "model_not_allowed", "invitation_expired", "invitation_revoked", "email_mismatch", "join_code_invalid", "domain_not_allowed", "already_started", "collab_unavailable", "terms_required", "not_org_member", "already_a_member", "owner_cannot_leave", "has_active_workspaces", "invitation_not_found", "invitation_accepted", "bulk_invite_cap_exceeded"];
10046
+ type OrgErrorCode = (typeof ORG_ERROR_CODES)[number];
10047
+ /**
10048
+ * The settings every organization kind has a default for. `organizations.
10049
+ * settings` and `workspaces.settings` store PARTIAL overrides of this shape;
10050
+ * `resolveEffectiveSettings` (./settings.ts) produces the full one.
10051
+ */
10052
+ declare const PresetSettingsSchema: z.ZodObject<{
10053
+ admin_access: z.ZodEnum<{
10054
+ edit: "edit";
10055
+ view: "view";
10056
+ }>;
10057
+ default_workflow_visibility: z.ZodEnum<{
10058
+ private: "private";
10059
+ workspace: "workspace";
10060
+ }>;
10061
+ member_access_to_shared: z.ZodEnum<{
10062
+ edit: "edit";
10063
+ view: "view";
10064
+ }>;
10065
+ members_can_create_projects: z.ZodBoolean;
10066
+ member_caps_enabled: z.ZodBoolean;
10067
+ personal_space_enabled: z.ZodBoolean;
10068
+ workspace_admins_can_invite: z.ZodBoolean;
10069
+ collaborators_can_invite: z.ZodBoolean;
10070
+ policy_survives_suspension: z.ZodBoolean;
10071
+ }, z.core.$strip>;
10072
+ type PresetSettings = z.infer<typeof PresetSettingsSchema>;
10073
+ type PresetSettingKey = keyof PresetSettings;
10074
+ declare const PRESET_SETTING_KEYS: readonly ("admin_access" | "default_workflow_visibility" | "member_access_to_shared" | "members_can_create_projects" | "member_caps_enabled" | "personal_space_enabled" | "workspace_admins_can_invite" | "collaborators_can_invite" | "policy_survives_suspension")[];
10075
+ /** `workspaces.settings` — per-workspace overrides only. */
10076
+ declare const WorkspaceSettingsSchema: z.ZodObject<{
10077
+ admin_access: z.ZodOptional<z.ZodEnum<{
10078
+ edit: "edit";
10079
+ view: "view";
10080
+ }>>;
10081
+ default_workflow_visibility: z.ZodOptional<z.ZodEnum<{
10082
+ private: "private";
10083
+ workspace: "workspace";
10084
+ }>>;
10085
+ member_access_to_shared: z.ZodOptional<z.ZodEnum<{
10086
+ edit: "edit";
10087
+ view: "view";
10088
+ }>>;
10089
+ members_can_create_projects: z.ZodOptional<z.ZodBoolean>;
10090
+ member_caps_enabled: z.ZodOptional<z.ZodBoolean>;
10091
+ personal_space_enabled: z.ZodOptional<z.ZodBoolean>;
10092
+ workspace_admins_can_invite: z.ZodOptional<z.ZodBoolean>;
10093
+ collaborators_can_invite: z.ZodOptional<z.ZodBoolean>;
10094
+ policy_survives_suspension: z.ZodOptional<z.ZodBoolean>;
10095
+ }, z.core.$strip>;
10096
+ type WorkspaceSettings = z.infer<typeof WorkspaceSettingsSchema>;
10097
+ /** `organizations.settings` — preset overrides plus org-only keys. */
10098
+ declare const OrgSettingsSchema: z.ZodObject<{
10099
+ admin_access: z.ZodOptional<z.ZodEnum<{
10100
+ edit: "edit";
10101
+ view: "view";
10102
+ }>>;
10103
+ default_workflow_visibility: z.ZodOptional<z.ZodEnum<{
10104
+ private: "private";
10105
+ workspace: "workspace";
10106
+ }>>;
10107
+ member_access_to_shared: z.ZodOptional<z.ZodEnum<{
10108
+ edit: "edit";
10109
+ view: "view";
10110
+ }>>;
10111
+ members_can_create_projects: z.ZodOptional<z.ZodBoolean>;
10112
+ member_caps_enabled: z.ZodOptional<z.ZodBoolean>;
10113
+ personal_space_enabled: z.ZodOptional<z.ZodBoolean>;
10114
+ workspace_admins_can_invite: z.ZodOptional<z.ZodBoolean>;
10115
+ collaborators_can_invite: z.ZodOptional<z.ZodBoolean>;
10116
+ policy_survives_suspension: z.ZodOptional<z.ZodBoolean>;
10117
+ allowed_email_domains: z.ZodOptional<z.ZodArray<z.ZodString>>;
10118
+ vocabulary_overrides: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
10119
+ }, z.core.$strip>;
10120
+ type OrgSettings = z.infer<typeof OrgSettingsSchema>;
10121
+
10122
+ /**
10123
+ * What the organization endpoints RETURN.
10124
+ *
10125
+ * `types.ts` carries what a client must send and the codes it must dispatch
10126
+ * on; this carries the other half of the same wire contract — the shapes that
10127
+ * come back. It lives here for the same reason: the SDK, the CLI, the app and
10128
+ * any third-party integration all read these, and a shape described in three
10129
+ * places is a shape that drifts in two of them.
10130
+ *
10131
+ * CONTRACT ONLY, like its sibling. There is no resolution logic here, no
10132
+ * access rule, no vocabulary — a view names fields, it does not decide who
10133
+ * may see them. Fields the server omits for a caller without the standing to
10134
+ * see them are OPTIONAL here rather than nullable: absent means "not for
10135
+ * you", `null` means "genuinely unset", and a client that cannot tell those
10136
+ * apart will render the wrong thing.
10137
+ */
10138
+ interface OrganizationView {
10139
+ id: string;
10140
+ slug: string;
10141
+ name: string;
10142
+ kind: OrgKind;
10143
+ status: OrgStatus;
10144
+ ownerUserId: string;
10145
+ settings: OrgSettings;
10146
+ termsAcceptedAt: string | null;
10147
+ createdAt: string;
10148
+ updatedAt: string;
10149
+ /** The CALLER's role. Absent on a read that did not establish membership. */
10150
+ role?: OrgRole;
10151
+ memberStatus?: MemberStatus;
10152
+ }
10153
+ interface OrgMemberView {
10154
+ userId: string;
10155
+ role: OrgRole;
10156
+ status: MemberStatus;
10157
+ joinedAt: string;
10158
+ email: string | null;
10159
+ displayName: string | null;
10160
+ avatarUrl: string | null;
10161
+ }
10162
+ interface WorkspaceView {
10163
+ id: string;
10164
+ orgId: string;
10165
+ name: string;
10166
+ slug: string;
10167
+ description: string | null;
10168
+ settings: WorkspaceSettings;
10169
+ defaultProjectId: string | null;
10170
+ archived: boolean;
10171
+ archivedAt: string | null;
10172
+ createdAt: string;
10173
+ updatedAt: string;
10174
+ /** The CALLER's role. Absent on a read that did not establish membership. */
10175
+ role?: WorkspaceRole;
10176
+ memberStatus?: MemberStatus;
10177
+ }
10178
+ interface WorkspaceMemberView {
10179
+ userId: string;
10180
+ role: WorkspaceRole;
10181
+ displayName: string | null;
10182
+ avatarUrl: string | null;
10183
+ addedAt: string;
10184
+ /** Workspace admins only — absent for a plain member's read. */
10185
+ status?: MemberStatus;
10186
+ creditCap?: number | null;
10187
+ }
10188
+ /** Where an invitation stands. `expired` is derived from `expiresAt`, not stored. */
10189
+ type InvitationState = "open" | "accepted" | "revoked" | "expired";
10190
+ interface InvitationView {
10191
+ id: string;
10192
+ orgId: string;
10193
+ workspaceId: string | null;
10194
+ email: string;
10195
+ orgRole: OrgRole;
10196
+ workspaceRole: WorkspaceRole | null;
10197
+ invitedBy: string | null;
10198
+ state: InvitationState;
10199
+ expiresAt: string;
10200
+ acceptedAt: string | null;
10201
+ revokedAt: string | null;
10202
+ createdAt: string;
10203
+ }
10204
+ /**
10205
+ * One row per address a create/resend was asked for.
10206
+ *
10207
+ * `link` is present whenever the address was NOT emailed — an install with no
10208
+ * mail provider, or a delivery that failed. A client MUST surface it: the
10209
+ * invitation exists either way, and without the link nobody can reach it.
10210
+ */
10211
+ interface InvitationDelivery {
10212
+ email: string;
10213
+ status: "sent" | "link_only" | "failed";
10214
+ link?: string;
10215
+ }
10216
+ /**
10217
+ * What an invitee sees BEFORE signing in — the one organization read that
10218
+ * needs no token. `email` comes back masked, so the invitee can recognise
10219
+ * their own address without the link disclosing it to whoever holds it.
10220
+ */
10221
+ interface InvitationPreview {
10222
+ orgName: string;
10223
+ kind: OrgKind;
10224
+ vocabulary: Record<string, string>;
10225
+ inviterName: string | null;
10226
+ workspaceName: string | null;
10227
+ email: string;
10228
+ expiresAt: string;
10229
+ state: InvitationState;
10230
+ }
10231
+ interface JoinCodeView {
10232
+ code: string;
10233
+ enabled: boolean;
10234
+ rotatedAt: string;
10235
+ rotatedBy: string | null;
10236
+ }
10237
+ /**
10238
+ * What `GET /v1/me` reports about the caller's memberships.
10239
+ *
10240
+ * Deliberately a SUMMARY, not the full views above: this is the payload every
10241
+ * client loads on every session start, and it answers one question — what am
10242
+ * I a member of, and what may I call each thing. Names, roles, and the
10243
+ * resolved vocabulary are here because a switcher cannot render without them;
10244
+ * descriptions, timestamps and default projects are not, because a switcher
10245
+ * never shows them and `GET /v1/orgs/:id` exists.
10246
+ *
10247
+ * The settings block is narrowed to the three keys a CLIENT can act on. The
10248
+ * rest of an organization's settings are enforced server-side, and shipping
10249
+ * them here would invite a client to enforce them badly.
10250
+ */
10251
+ interface OrganizationSummary {
10252
+ id: string;
10253
+ slug: string;
10254
+ name: string;
10255
+ kind: OrgKind;
10256
+ status: OrgStatus;
10257
+ /** The caller's own role and standing — always present in this payload. */
10258
+ role: OrgRole;
10259
+ memberStatus: MemberStatus;
10260
+ settings: {
10261
+ personal_space_enabled: boolean;
10262
+ allowed_email_domains: string[];
10263
+ vocabulary_overrides: Record<string, string>;
10264
+ };
10265
+ /** Resolved labels, so no client hard-codes "Class" or "Team". */
10266
+ vocabulary: Record<string, string>;
10267
+ }
10268
+ interface WorkspaceSummary {
10269
+ id: string;
10270
+ orgId: string;
10271
+ name: string;
10272
+ slug: string;
10273
+ role: WorkspaceRole;
10274
+ memberStatus: MemberStatus;
10275
+ archived: boolean;
10276
+ }
10277
+ /**
10278
+ * The organizations block on `GET /v1/me`.
10279
+ *
10280
+ * THREE distinct states, and a client that collapses them is wrong in a way
10281
+ * users feel: the fields ABSENT means this install has no organizations at
10282
+ * all; present and empty means the account belongs to none; and
10283
+ * `organizationsUnavailable` means the lookup FAILED — in which case a
10284
+ * client must KEEP whatever selection it already had, because telling someone
10285
+ * their school vanished during a cache blip is worse than a stale switcher.
10286
+ */
10287
+ interface MeOrganizations {
10288
+ organizations?: OrganizationSummary[];
10289
+ workspaces?: WorkspaceSummary[];
10290
+ lastWorkspaceId?: string | null;
10291
+ organizationsUnavailable?: boolean;
10292
+ }
10293
+ /**
10294
+ * One recorded action in an organization's audit log.
10295
+ *
10296
+ * `action` is an OPEN vocabulary and a client must not exhaust it: new
10297
+ * actions are added as the product grows, and a switch that throws on an
10298
+ * unknown one turns a new feature into a broken page. Render what you
10299
+ * recognise, fall back to the raw string for the rest.
10300
+ *
10301
+ * `actor` is null for anything the system did on nobody's behalf.
10302
+ */
10303
+ interface OrgAuditEntry {
10304
+ id: string;
10305
+ workspaceId: string | null;
10306
+ action: string;
10307
+ targetType: string | null;
10308
+ targetId: string | null;
10309
+ details: Record<string, unknown>;
10310
+ createdAt: string;
10311
+ actor: {
10312
+ userId: string;
10313
+ displayName: string | null;
10314
+ email: string | null;
10315
+ } | null;
10316
+ }
10317
+ /** A cursor-paged read. The cursor is part of the answer, not a side channel. */
10318
+ interface OrgPage<T> {
10319
+ data: T[];
10320
+ nextCursor: string | null;
10321
+ }
10322
+
10323
+ export { ACCESS_LEVELS, ACTIVE_SCENE_HELPERS, ADVANCED_MODE_UNAVAILABLE_REASON, AGGREGATEABLE_TYPES, AGGREGATE_LANE_SOURCE_TYPES, AI_AVATAR_DURATION_BUCKETS, AI_AVATAR_MAX_AUDIO_SEC, AI_AVATAR_MAX_DURATION_SEC, AI_AVATAR_RESERVE_IDS, AI_WRITER_PROVIDERS, ALA_CARTE_BOARDS, ALL_CAPTION_STYLES, ANIMALS, ANIMAL_SUBCATEGORY_LABELS, ANIMAL_SUBCATEGORY_ORDER, ASPECT_RATIO_DIMENSIONS, AUDIO_ADDON_PROVIDERS, AUDIO_CROSSFADE_CURVES, AUDIO_CROSSFADE_CURVE_IDS, AUDIO_FX_PRESETS, AUDIO_FX_PRESET_LABELS, AUDIO_FX_PRESET_SET, AUDIO_FX_REVERB_PRESETS, AUDIO_PRODUCER_TYPES, type AccessLevel, type AddBRollResult, AddBRollResultSchema, type AggregateableType, type AggregationBuckets, type AiAvatarDurationBucket, type AiAvatarEngine, type AiAvatarResolution, type AiWriterProvider, type AlaCarteBoard, type AnalyzedScene, type AnchorSceneStyleResult, AnchorSceneStyleResultSchema, type Animal, type AnimalSubcategory, type AssetRef, AssetRefSchema, type AudioCrossfadeCurve, type AudioFxPreset, type AudioLayer, type AuditImagesResult, AuditImagesResultSchema, type AuditImagesShotEntry, AuditImagesShotEntrySchema, AuditPromptIssueSchema, type AuditPromptResult, AuditPromptResultSchema, AvatarPayloadError, BOARD_TO_ASSET_TYPE, BOARD_TO_COLUMN, BOARD_VARIANTS, type BoardEntityKind, type BoardPromptContext, type BoardTemplate, BridgeToNextSceneInputSchema, type BridgeToNextSceneResult, BridgeToNextSceneResultSchema, type BrowseCommunityParams, type BrowseCommunityResult, CATEGORY_DURATION_DEFAULTS, CHARACTER_ASPECT_DEFAULTS, CHARACTER_ASPECT_OPTIONS, CHARACTER_ASSET_TYPES, CHARACTER_ASSET_VARIANTS, CHARACTER_ATTACH_COLUMNS, CHARACTER_FACETS, CHARACTER_FACET_IDS, CHARACTER_LORA_TRAINING_JOB_TYPE, CHARACTER_MOTION_PROVIDERS, CHARACTER_PICKER_DISPLAY_ORDER, CHARACTER_REFERENCE_PHOTO_KINDS, CHARACTER_STYLES, CHARACTER_VARIANT_ASSET_BUCKETS, CHAT_ENABLED_STAGES, CHAT_STAGES, CHAT_TURN_CAPS, CHAT_WIRED_STAGES, CINEMATIC_DEFAULT_DURATION_SEC, CINEMATIC_DEFAULT_RESOLUTION, CINEMATIC_MAX_DURATION_SEC, CINEMATIC_MAX_LOOKS, CINEMATIC_MAX_REFERENCE_IMAGES, CINEMATIC_MAX_REFERENCE_VIDEOS, CINEMATIC_MIN_DURATION_SEC, CINEMATIC_MIN_LOOKS, CINEMATIC_PROMPT_MAX, CINEMATIC_RESERVE_IDS, COLLABORATOR_ROLES, COLLECT_IN_HANDLE, COMBINE_TRANSITIONS, COMBINE_TRANSITION_GROUP_LABELS, COMBINE_TRANSITION_GROUP_ORDER, COMBINE_TRANSITION_IDS, COMPOSER_PLAN_FIELDS, COMPOSER_PLAN_MAP, CONTENT_TYPES_BY_PLATFORM, CREATURE_ATTACH_COLUMNS, CREDIT_BASE_USD, CREDIT_ROUNDING_RESOLUTION, type CaptionStyle, type CastCoverageCriticVerdict, CastCoverageCriticVerdictSchema, type CharacterAspectRatio, type CharacterAssetType, type CharacterAssetTypeForAspect, type CharacterAttachColumn, type CharacterDef, type CharacterFacet, type CharacterImageCriticVerdict, CharacterImageCriticVerdictSchema, type CharacterLoraFields, type CharacterMentionTokenInfo, CharacterMetadataSchema, type CharacterMotionProvider, type CharacterReferencePhoto, type CharacterReferencePhotoKind, type CharacterVariantAssetBucket, type CharacterVariantAssetItem, type CharacterVoiceSpec, type ChatEnabledStage, type ChatTurnResponse, ChatTurnResponseSchema, type CinematicResolution, type ClipLook, type CloneListingResult, type CollaboratorRole, type CombineTransition, type CombineTransitionGroup, type CombineVideosEstimatorInput, type CommunityCard, type CommunityEntityType, type CommunityFullDetail, type CommunityReportReason, type CommunitySort, type ComponentHandle, type ComponentMetadata, type ConnectedReference, type CreatureAttachColumn, CriticIssueSchema, type CustomEntry, DEFAULT_AUDIO_CROSSFADE_CURVE_ID, DEFAULT_CARRIED_FRACTION, DEFAULT_CHARACTER_ANGLE_COUNT, DEFAULT_CHARACTER_EXPRESSION_COUNT, DEFAULT_CHARACTER_FACET, DEFAULT_LABEL_BY_SOURCE, DEFAULT_LOCATION_USAGE_MODE, DEFAULT_PANEL_COUNT, DEFAULT_REF_IMAGE_MAX, DEFAULT_SECTIONS, DEFAULT_USAGE_MODE, DEFAULT_VIDEO_ANALYSIS_MODEL, DEFAULT_VIDEO_ANALYSIS_TIER, DEFAULT_VIDEO_CLIP_COST, DEFAULT_VIDEO_DURATION_SEC, DEFAULT_VIDEO_PROVIDER, DEFAULT_VOICE_CHANGER_MODEL, DEFAULT_VOICE_DESIGN_MODEL, DETAIL_VARIANTS, DURATION_PRICED_PROVIDERS, DYNAMIC_PRODUCER_TYPES, type DetectionResult, DetectionResultSchema, type DialogueLine, EFFORT_TIER_BUMP, EMOTIONAL_BEAT, ENTITY_ASPECT_DEFAULTS, ENTITY_IMAGE_HANDLE_TYPES, ENTITY_SECTIONS, ENTITY_STATUSES, ENTITY_TOOL_RETRY_CAP, ENTITY_TYPES, EXECUTION_DATA_KEYS, EXTEND_VIDEO_PROVIDERS, type EntityKind, type EntityMetadata, EntityMetadataSchema, type EntityReferenceInput, type EntityRejectInput, EntityRejectInputSchema, type EntitySlot, type EntityStaleEvent, EntityStaleEventSchema, type EntityStateChangeEvent, EntityStateChangeEventSchema, type EntityStatus, type EntityStudioKind, type EntityStyle, type EntityType, type EvaluateConditionOptions, type ExportedPreset, type ExposableField, type ExposableOutput, type ExposedSetting, type ExtendVideoProvider, type ExtraRefCharacterContext, type ExtraRefInput, FACE_SWAP_PROVIDERS, FAL_LIP_SYNC_PROVIDERS, FAN_OUT_EACH_TYPES, FEATURED_ENTITIES, FILM_BASE_CREDITS, FLEXIBLE_INPUT_LIP_SYNC_PROVIDERS, FLUX2_RES_MP, FLUX_LORA_CHARACTER_MODEL_ID, FRAME_MODE_ADAPTIVE_ONLY_ASPECT, FRAME_TARGET_HANDLES, FREECUT_EXPORT_COMPLETE, FREECUT_EXPORT_PROGRESS, FREECUT_READY, FREECUT_REQUEST_IMPORT, FURNITURE, FURNITURE_SUBCATEGORY_LABELS, FURNITURE_SUBCATEGORY_ORDER, type FaceSwapProvider, type FavoriteListingResult, type FeaturedEntity, type FilmCreditEstimate, type FilterListCondition, type FilterListOperator, type FilterOperator, type FixContinuityInput, FixContinuityInputSchema, type FixContinuityResult, FixContinuityResultSchema, type Flux2Model, type FreecutExportCompletePayload, type FreecutExportProgressPayload, type FreecutImportFile, type FreecutRequestImportPayload, type FullSelectorMode, type Furniture, type FurnitureSubcategory, GENERATE_TEXT_DELIMITER, GLOBAL_MAX_DURATION_SECONDS, GRANTED_ACCESS, GROUP_HANDLE_PREFIX, GUIDANCE_SCALE_SUPPORT, GVP_ANCHOR_CHOICES, GVP_DEFAULT_PROVIDER, GVP_END_FRAME_PROVIDERS, GVP_EXTEND_PROVIDERS, GVP_SUPPORTED_PROVIDERS, GenerateMotionInputSchema, type GenerateMotionResult, GenerateMotionResultSchema, type GenericEdge, type GenericNode, type GrantedAccess, type GvpAnchorChoice, type GvpAnchorWireMode, HANDLE_PORT_SEPARATOR, HELPERS_SHIPPED_IN_1B3, HIGH_QUALITY_PROVIDERS, HINT_EXEMPT_PARAMETER_TYPES, type HintEdgeLike, type HintGraphContext, type HintNodeLike, type I18nCatalogId, I2I_MASK_SUPPORT, I2I_STRENGTH_SUPPORT, IDEOGRAM_PROVIDERS, IMAGE_CRITIC_LEAF_MODES, IMAGE_CRITIC_MAX_RETRIES, IMAGE_CRITIC_METADATA_KEYS, IMAGE_CRITIC_MIN_ADHERENCE_SCORE, IMAGE_CRITIC_MODES, IMAGE_CRITIC_UNRESOLVABLE, IMAGE_EDIT_PROVIDERS, IMAGE_GEN_PROVIDERS, IMAGE_I2I_PROVIDERS, IMAGE_MASK_MODE, IMAGE_PROMPT_MAX, IMAGE_REF_TYPES, IMAGE_TO_VIDEO_PROVIDERS, INPUT_FIELD_MAP, INPUT_NODE_TYPES, INSTAGRAM_CAROUSEL_MAX_ITEMS, INSTAGRAM_CAROUSEL_MIN_ITEMS, ITER_CLONE_PATTERN, type IdentityFidelity, type IdentityMeta, type ImageCriticIssue, ImageCriticIssueSchema, type ImageCriticLeafMode, type ImageCriticMetadataKey, type ImageCriticMode, type ImageCriticNodeIssue, type ImageCriticResult, ImageCriticResultSchema, type ImageCriticVerdict, ImageCriticVerdictSchema, type ImageEditProvider, type ImageGenProvider, type ImageI2IProvider, type ImageMaskMode, type ImageToVideoProvider, type ImprovePromptInput, ImprovePromptInputSchema, type ImprovePromptResult, ImprovePromptResultSchema, type InputFieldSchema, type InvitationDelivery, type InvitationPreview, type InvitationState, type InvitationView, type JoinCodeView, type JsonEvalResult, type JsonFilter, type JsonPatch, KEYFRAME_CREDITS_PER_SHOT, KINETIC_CAPTION_STYLES, type KieApiFormat, type KineticCaptionStyle, LANGUAGES, LEGACY_LOTTIE_HOST_REMAP, LIP_SYNC_DURATION_BUCKETS, LIP_SYNC_MAX_AUDIO_SECONDS, LIP_SYNC_PROVIDERS, LLM_FEATURE_DEFAULTS, LLM_MODALITY_CAPS, LLM_MODELS, LLM_MODEL_IDS, LLM_REASONING_EFFORTS, LLM_ROUTE_DEFAULTS, LLM_TEXT_INPUT_MAX, LLM_VENDOR_LABELS, LLM_VENDOR_ORDER, LOCATION_ASSET_TYPES, LOCATION_ASSET_VARIANTS, LOCATION_ATMOSPHERE_PROVIDERS, LOCATION_ATTACH_COLUMNS, LOCATION_BUCKET_TO_CATALOG_ID, LOCATION_PRESET_TO_CATALOG, LOCATION_REFERENCE_PHOTO_KINDS, LOCATION_REFERENCE_PHOTO_KIND_LABELS, LOCATION_USAGE_MODES, LOTTIE_OVERLAY_CATALOG, LOTTIE_SLOT_FIELD_PREFIX, type LabeledOption, type LipSyncDurationBucket, type LipSyncProvider, type LlmFeature, type LlmModelDef, type LlmModelGroup, type LlmReasoningEffort, type LlmRouteDefaults, type LlmTier, type LlmVendor, type LocaleCatalogMap, type LocaleDirection, type LocaleId, type LocationAssetType, type LocationAtmosphereProvider, type LocationAttachColumn, type LocationCatalogRef, type LocationImageCriticVerdict, LocationImageCriticVerdictSchema, type LocationMentionTokenInfo, LocationMetadataSchema, type LocationReferencePhotoKind, type LocationUsageMode, LocationsCoverageCriticIssueSchema, type LocationsCoverageCriticVerdict, LocationsCoverageCriticVerdictSchema, type LoopTrimEstimatorInput, type LoopVideoEstimatorInput, type LoraEligibleRef, type LoraRouting, type LottieOverlayCatalogEntry, type LottieSlotField, MAX_CUSTOM_ENTRIES_PER_BOARD, MAX_IMAGE_PROMPT_CHARS_BY_PROVIDER, MAX_LOCATION_VARIANTS, MAX_NEGATIVE_PROMPT_CHARS_BY_PROVIDER, MAX_PANELS_PER_SHEET, MAX_TTS_CHARS_BY_PROVIDER, MAX_VIDEO_PROMPT_CHARS_BY_PROVIDER, MEMBER_STATUSES, MINIMAX_H3_DEFAULT_RESOLUTION, MINIMAX_H3_PROVIDERS, MODELS_WITH_REFERENCE_IMAGE_SUPPORT, MODEL_CATALOG, MODEL_PARAM_NODE_TYPES, MODEL_RECOMMENDATIONS, MODIFY_IMAGE_PROVIDERS, MOTION_COLUMN, MOTION_TRANSFER_PROVIDERS, MUSIC_PROVIDERS, type MaskRegionDescriptor, type MatchCutVerdict, MatchCutVerdictSchema, type MeOrganizations, type Member, type MemberStatus, type MinimalEdge, type MinimalNode, type ModelCatalogEntry, type ModelInputAdjustment, type ModelKind, type ModelMenuOption, type ModelMode, type ModelNodeTarget, type ModelPromptingStyle, type ModelRecommendation, type ModelTreeLine, type ModelTreeVariant, type ModelValidationIssue, type ModifyImageProvider, type MotionTransferProviderType, type MusicProvider, NATIVE_ADAPTIVE_ASPECT, NATIVE_NEGATIVE_PROMPT_MODELS, NATIVE_NEGATIVE_VIDEO_PROVIDERS, NEGATIVE_PROMPT_MAX, NODARO_IMPORT_FILES, NODARO_LOAD_TIMELINE, NODARO_LOAD_VIDEO, NODARO_RESET_PROJECT, NODE_DEFAULT_TYPES, NODE_MAPPABLE_FIELDS, NODE_PRESET_EXPORT_KIND, NODE_REF_PATTERN, NON_EN_LOCALE_IDS, NO_SPLIT_DELIMITER, type NodaroLoadTimelinePayload, type NodaroLoadVideoPayload, type NodeDefaultType, type NodeParamAdjustment, type NodePresetExport, type NormalizedModelInput, type NormalizedNodes, OBJECT_ASPECT_DEFAULTS, OBJECT_ASPECT_OPTIONS, OBJECT_ASSET_TYPES, OBJECT_ASSET_VARIANTS, OBJECT_ATTACH_COLUMNS, OBJECT_MOTION_PROVIDERS, OBJECT_PICKER_NODE_TYPES, ORG_ERROR_CODES, ORG_KINDS, ORG_ROLES, ORG_STATUSES, OUTPUT_FIELD_MAP, OUTPUT_FORMATS, type ObjectAspectRatio, type ObjectAssetType, type ObjectAssetTypeForAspect, type ObjectAttachColumn, ObjectMetadataSchema, type ObjectMotionProvider, type ObjectsValidationIssue, type ObjectsValidationResult, OptimizeForModelInputSchema, type OptimizeForModelResult, OptimizeForModelResultSchema, type OrgAuditEntry, type OrgErrorCode, type OrgKind, type OrgMemberView, type OrgPage, type OrgRole, type OrgSettings, OrgSettingsSchema, type OrgStatus, type OrganizationSummary, type OrganizationView, type OutputFormat, type OutputMode, type OutputType, PARAMETER_NODE_TYPES, PASSTHROUGH_TYPES, PAYG_RETENTION_DAYS, PER_FORMAT_DURATION_BOUNDS, PICKER_TO_COMBINE_TRANSITION, PIPELINE_ACTIVATION_MODES, PIPELINE_FORMATS, PIPELINE_HARD_TIMEOUT_MS, PIPELINE_MODEL_STAGES, PIPELINE_MODES, PIPELINE_OUTPUT_RESOLUTIONS, PIPELINE_PINNABLE_IMAGE_MODELS, PIPELINE_PINNABLE_SCRIPT_LLMS, PIPELINE_PINNABLE_VIDEO_MODELS, PIPELINE_STAGE_NAMES, PIPELINE_STAGE_TIMEOUT_MS, PIPELINE_TYPES, PLACEHOLDER_CHARACTER_NAME, PLATFORM_LABELS, PLATFORM_SPECS, PRESET_APPLY_CLEAR_KEYS, PRESET_EXCLUDED_KEYS, PRESET_LABELS, PRESET_SETTING_KEYS, PRICING_DEFAULT_DURATION_SEC, PRICING_DEFAULT_RESOLUTION, PROMPT_HARD_CEILING, PROVIDER_DIRECTIVE_DEFAULTS, PROVIDER_PLACEHOLDER_PREFIX, type PanelGenRequest, type PanelRequest, type PanelSource, type PipelineActivationMode, type PipelineCompletedEvent, PipelineCompletedEventSchema, type PipelineConfig, PipelineConfigSchema, type PipelineDriftSummary, PipelineDriftSummarySchema, type PipelineEditorDecisionsReadyEvent, PipelineEditorDecisionsReadyEventSchema, type PipelineEvent, type PipelineForkedEvent, PipelineForkedEventSchema, type PipelineFormat, type PipelineInput, PipelineInputSchema, type PipelineLifecycleEvent, type PipelineMode, type PipelineModelStage, type PipelineMusicReadyEvent, PipelineMusicReadyEventSchema, type PipelineOutputResolution, type PipelinePinnableImageModel, type PipelinePinnableScriptLlm, type PipelinePinnableVideoModel, type PipelineStageName, PipelineStageNameSchema, type PipelineStageStatus, PipelineStageStatusSchema, type PipelineState, PipelineStateSchema, type PipelineStatus, PipelineStatusSchema, type PipelineType, type PixelBox, type PresentationItem, type PresetEntry, type PresetSettingKey, type PresetSettings, PresetSettingsSchema, type PriceVariant, type ProgressSegment, type ProposedChange, type PublishListingParams, type PublishListingResult, QA_CHECK_PROVIDERS, type QaCheckProvider, type QualityLevel, REDUCE_STRATEGIES, REDUCE_STRATEGY_IDS, REFERENCE_BOARD_PROVIDERS, REFERENCE_BOARD_TEMPLATES, REFERENCE_HANDLE_MAP, REFERENCE_ROLE_PRESETS, REF_HANDLE_CATEGORY, REF_IMAGE_MAX_LIMITS, RENDERING_SPEED_SUPPORT, REPEATABLE_NODE_TYPES, REPEAT_PLACEHOLDER, REPLICATE_LIP_SYNC_PROVIDERS, RESERVED_TEMPLATE_VARS, type ReduceMeta, type ReduceStrategy, type ReduceStrategyId, type RefCandidate, type RefModalityEdge, type ReferenceBoardProvider, type ReferenceModality, type ReferenceSheet, type ReferenceSource, type ReportListingResult, type ResolveCharacterAspectOptions, type ResolveObjectAspectOptions, type ResolveSeparatorOptions, type ResolvedDialogueVoiceLine, type RouterConditionGroup, SCENE_HELPER_NAMES, SCRAPER_ACTOR_LABELS, SCRAPER_CREDIT_COSTS, SCRAPER_OUTPUT_FIELDS, SCRIPT_PROVIDERS, SEASONS, SECTION_BOARD, SECTION_KINDS, SEEDANCE_2_5_REF_LIMITS, SEEDANCE_2_CONTINUATION_REF_SEC, SEEDANCE_2_EXTEND_STITCH, SEEDANCE_2_PROVIDERS, SEEDANCE_2_R2V_MAX_AUDIO_SEC_BY_PROVIDER, SEEDANCE_2_R2V_MIN_REF_VIDEO_SEC, SEEDANCE_2_REF_LIMITS, SEEDANCE_LIP_SYNC_PROVIDERS, SEED_SUPPORT, SEPARATOR_DISPLAY, SEPARATOR_PRESETS, SHEET_ASPECTS, SHEET_BACKGROUNDS, SHEET_PRESETS, SHEET_SKINS, SHEET_TYPES, SHORT_FILM_ANGLE_COUNT, SHORT_FILM_EXPRESSION_COUNT, SHORT_FILM_VARIANT_THRESHOLD_SEC, SLOT_TOKEN_RE, SMART_CUT_WINDOW_DEFAULT, SMART_CUT_WINDOW_MAX, SMART_CUT_WINDOW_MIN, SOCIAL_POST_NODE_TYPES, STAGE_PATCH_SCHEMA, STATIC_CAPTION_STYLES, STRUCTURAL_SECTIONS, STRUCTURED_VISION_MODELS, SUBMISSION_STATUSES, SUNO_ADD_TRACK_MODELS, SUNO_FIELD_HANDLE_FIELDS, SUNO_MODELS, SUNO_TEXT_MAX, SUNO_TITLE_MAX, SUNO_TRACK_SOURCE_TYPES, SUPPORTED_FONT_NAMES, SURROUND_DIRECTIONS, SWITCHX_BLOCK_FRAMES, SWITCHX_FRAME_TIERS, type SceneData, type SceneHelperName, SceneHelperNameSchema, type SceneInputMode, SceneInputModeSchema, type SceneMetadata, SceneMetadataSchema, type SceneNodeData, SceneNodeDataSchema, SceneSpecSchema, type ScraperActorId, type ScriptCriticVerdict, ScriptCriticVerdictSchema, type ScriptProvider, type Season, type SectionKind, type SelectorConfig, type SelectorFields, type SelectorMode, type SelectorPredicateOp, type SelectorResult, type SemanticAspectRatio, type SeparatorPreset, type SharedListing, type SharedVoice, type SheetAspect, type SheetBackground, type SheetCostEstimate, type SheetEntry, type SheetFlavour, type SheetGenerationPlan, type SheetPreset, type SheetPresetId, type SheetSection, type SheetSkin, type SheetTextData, type SheetType, type ShotElement, type ShotImageElement, type ShotShapeElement, type ShotSpec, ShotSpecSchema, type ShotTextElement, type ShowrunnerPlan, ShowrunnerPlanSchema, type SidecarLoader, type SlotControlDescriptor, type SlotControlKind, type SlotVariation, type SocialMediaContentType, type SocialMediaPlatform, type SocialMediaSpec, type SortDirection, type SortListOptions, type SortType, type StageAwaitingSubGateEvent, StageAwaitingSubGateEventSchema, type StaticCaptionStyle, type StoryboardCohesionCriticVerdict, StoryboardCohesionCriticVerdictSchema, type StyleDirectives, StyleDirectivesSchema, type SubGateName, SubGateNameSchema, type SubmissionStatus, type SunoAddTrackModel, type SunoModel, type SupportedFontName, type SurroundDirection, type Swatch, T2I_TO_I2I_VARIANT, TASK_CHAINED_EDIT_PROVIDERS, TEXT_TO_AUDIO_PROVIDERS, TEXT_TO_VIDEO_PROVIDERS, TIER_MAX_PIPELINE_COST_CREDITS, TIER_PIPELINE_PARALLELISM, TILT_CARRIED_FRACTION, TRANSCRIBE_PROVIDERS, TRANSIENT_RUNTIME_KEYS, TTS_PROVIDERS, TTS_TEXT_MAX, TWO_K_RESOLUTION_PROVIDERS, type TextToAudioProvider, type TextToVideoProvider, type TranscribeProvider, type TransitionType, TransitionTypeSchema, type TrimVideoEstimatorInput, type TtsProvider, UPSCALE_IMAGE_PROVIDERS, USAGE_MODES, type UpscaleImageProvider, type UsageMode, VARIABLES_HANDLE_ID, VARIABLE_PRICING_MODELS, VEHICLES, VEHICLE_SUBCATEGORY_LABELS, VEHICLE_SUBCATEGORY_ORDER, VEO_PROVIDERS, VIDEO_ANALYSIS_BUCKET_CREDITS, VIDEO_ANALYSIS_DEFAULT_VARIATION, VIDEO_ANALYSIS_DURATION_BUCKETS, VIDEO_ANALYSIS_DURATION_TOLERANCE_SEC, VIDEO_ANALYSIS_ENTITY_SOURCES, VIDEO_ANALYSIS_FACELESS_ANGLES, VIDEO_ANALYSIS_LEGACY_MODELS, VIDEO_ANALYSIS_LLM_MODELS, VIDEO_ANALYSIS_MAX_DURATION_SEC, VIDEO_ANALYSIS_MAX_SCENE_SEC, VIDEO_ANALYSIS_MAX_VARIATIONS, VIDEO_ANALYSIS_MIXED_TIERS, VIDEO_ANALYSIS_SHOT_ANGLES, VIDEO_ANALYSIS_SPEED_EFFECTS, VIDEO_ANALYSIS_STORY_JUMPS, VIDEO_ANALYSIS_TIERS, VIDEO_ANALYSIS_TIER_LABELS, VIDEO_ANALYSIS_TIER_ORDER, VIDEO_ANALYSIS_TIMES_OF_DAY, VIDEO_ANALYSIS_TRANSITIONS, VIDEO_ANALYSIS_VARIATION_SLUGS, VIDEO_ANALYSIS_VISUAL_EFFECTS, VIDEO_ANALYSIS_WINDOW, VIDEO_AUDIO_CAPABILITY, VIDEO_AUDIT_BUCKET_CREDITS, VIDEO_CLIP_CREDITS, VIDEO_CRITIC_CREDITS_PER_SHOT, VIDEO_CRITIC_FRAME_MODES, VIDEO_CRITIC_MAX_RETRIES, VIDEO_CRITIC_METADATA_KEYS, VIDEO_CRITIC_MIN_ADHERENCE_SCORE, VIDEO_DURATION_TIERS, VIDEO_GEN_COLLAPSED_T2V_IDS, VIDEO_GEN_PROVIDERS, VIDEO_INPUT_LIP_SYNC_PROVIDERS, VIDEO_MODEL_CAPS, VIDEO_MODE_ALIASES, VIDEO_PRODUCER_TYPES, VIDEO_PROMPT_MAX, VIDEO_PROVIDERS_REQUIRING_IMAGE, VIDEO_PROVIDERS_WITHOUT_DISPATCH, VIDEO_REF_LIMITS_BY_PROVIDER, VIDEO_TO_VIDEO_PROVIDERS, VIDEO_UPSCALE_PROVIDERS, VIDEO_UTIL_PRICING, VIDEO_VARIABLE_PRICING, VOICE_CHANGER_MODELS, VOICE_CHANGER_MODEL_IDS, VOICE_DESIGN_MODELS, type ValidateMatchCutInput, ValidateMatchCutInputSchema, type ValidateMatchCutResult, ValidateMatchCutResultSchema, type ValidationField, type Vehicle, type VehicleSubcategory, type VideoAnalysisEntitySource, type VideoAnalysisMixedTier, type VideoAnalysisModelTier, type VideoAnalysisResult, type VideoAnalysisShotAngle, type VideoAnalysisSpeedEffect, type VideoAnalysisTier, type VideoAnalysisTransition, type VideoAnalysisVisualEffect, type VideoAudioCapability, type VideoAudioMode, type VideoClipCost, type VideoCriticFrameMode, type VideoCriticMetadataKey, type VideoCriticShotFields, type VideoCriticVerdict, VideoCriticVerdictSchema, type VideoGenProvider, type VideoModeAlias, type VideoModelCapabilities, type VideoToVideoProvider, type VideoUpscaleProvider, type Voice, type VoiceChangerModel, type VoiceClone, type VoiceDesignModel, type VoiceLibraryParams, type VoiceLibraryResponse, type VoiceMatch, VoiceMatchSchema, type VoiceType, WARDROBE_VARIANTS, WEAPONS, WEAPON_SUBCATEGORY_LABELS, WEAPON_SUBCATEGORY_ORDER, WORKFLOW_VISIBILITIES, WORKSPACE_HEADER, WORKSPACE_HEADER_LOWER, WORKSPACE_ROLES, type Weapon, type WeaponSubcategory, type WindowAnalysis, type WindowScene, type WorkflowExport, type WorkflowExportCharacter, type WorkflowExportCreature, type WorkflowExportLocation, type WorkflowExportObject, type WorkflowImportReport, type WorkflowMediaRef, type WorkflowPortability, type WorkflowVisibility, type WorkspaceMemberView, type WorkspaceRole, type WorkspaceSettings, WorkspaceSettingsSchema, type WorkspaceSummary, type WorkspaceView, aggregateByType, aiAvatarReserveCreditId, analyzedSceneSchema, applyDefaultVideoSelection, applyHandleInputOverride, applyRange, applyRangeIndices, applySlots, applyVideoAudioToggle, applyVideoNegativePrompt, aspectRatioFromDims, aspectRatioOptionsByKind, aspectRatioToNumber, assembleNarratedVideoCredits, availableReasoningEfforts, bucketSecondsFromAuditCreditId, bucketSecondsFromCreditId, buildBoardPrompt, buildChildrenByParent, buildConditionVariables, buildCreditModelIdentifier, buildExpressionFromVisual, buildLipSyncCreditId, buildLlmCreditIdentifier, buildModelMenu, buildModelTree, buildMotionCreditModelIdentifier, buildNodePresetExport, buildPanelPrompt, buildProgressSegments, buildRangeLabel, buildScraperCreditId, buildVideoAnalysisCreditId, buildVideoAuditCreditId, buildVideoCreditModelIdentifier, calculateCombinedProgress, calculateMonetizationMarkup, calculateMonetizedCost, calculateProgress, canonicalVarName, characterBoardItems, characterBucketDisplayRank, characterMentionSlug, characterMentionableAssetArrays, characterSheetRefItems, characterVariantAssetArrays, cinematicCreditId, clampCinematicDuration, clampSmartCutWindow, cleanOrphanedItems, clearImageCriticMetadata, clearVideoCriticMetadata, clipLookSchema, collectAncestorRefs, combineSameLabelRefs, computeAggregateLanes, countRefModalityEdges, creditRangesAll, creditsToUsd, decodeProviderItem, defaultCarriedFraction, defaultResolutionFor, defaultRoleForSource, defaultVideoAspectRatio, deriveLinkedFields, deriveLottieSlotFields, deriveSlotRefs, describeEdgeBehavior, describeMaskRegion, describeNodeAdjustments, describeSlotControl, dropUnknownBindings, dropUnknownSpeakers, durationsByMode, effectiveReasoningEffort, encodeProviderItem, ensureLocaleCatalogLoaded, entitySlotSchema, entryMatchesQuery, estimateCombineVideosCredits, estimateFilmCredits, estimateLoopTrimAddonCredits, estimateLoopVideoCredits, estimateScriptDurationSec, estimateSheetCost, estimateTrimVideoCredits, evaluateCondition, evaluateConditionGroup, evaluateJsonExpression, evaluateJsonPath, expandExtraRefsToConnectedReferences, expandItemsWithRepeat, extractAllGeneratedResults, extractCharacterLoraFields, extractGeneratedJsonAsList, extractPresetData, extractReferencedLabels, extractVideoDurationFromNode, fieldKeyFromHandle, filterCloneNodes, findCharacterMentionTokens, findLocationMentionTokens, findSeedance2AudioOverLimit, firstSightExtraRole, flattenItems, getAnimal, getAnimalLabel, getAspectRatioOptions, getAudioCrossfadeCurve, getCharacterFacet, getCombineTransition, getCreditRange, getDurationsForModel, getEffectiveRepeatCount, getFeaturedEntities, getFurniture, getFurnitureLabel, getInputFieldSchema, getInputNodes, getItemSortId, getLipSyncMaxAudioSeconds, getLlmModalityCaps, getLlmModel, getLlmTier, getLocaleDirection, getMaxImagePromptChars, getMaxNegativePromptChars, getMaxSunoPromptChars, getMaxSunoStyleChars, getMaxTtsChars, getMaxVideoPromptChars, getModel, getNodeLabel, getNodeResult, getOutputNodes, getOutputType, getParameterValue, getQualityOptions, getResolutionOptions, getRouteReachableNodeIds, getStrategy, getTargetField, getValidValues, getVehicle, getVehicleLabel, getVideoAudioCapability, getWeapon, getWeaponLabel, groupByFamily, groupHandleId, groupLlmModelsByVendor, hasContiguousSegmentDurations, hasFeature, hexToRgbaArray, humanizeSlotSid, imageReferenceLimit, inferMusicVideo, isAggregateableType, isCharacterAspectRatio, isCollectInEdge, isDefaultSelectorConfig, isExpandedClone, isFlux2Model, isGvpSupportedProvider, isHandleInputWired, isKineticCaptionStyle, isLocationUsageMode, isMinimaxH3Provider, isObjectAspectRatio, isOversizedScene, isPaygRetentionActive, isPerSecondLipSyncProvider, isScraperActor, isSeedance2Provider, isTiltDirection, isUsageMode, isVeoProvider, isVideoAnalysisMixedTier, isVideoAnalysisTier, jsonResultToList, listBoardTemplates, listModels, listSlotSids, llmRouteDefaults, locationMentionSlug, locationReferencePhotoKindLabel, locationUsageModeLabel, mapAspectRatio, mapQuality, mapShotIntentToProviderDirectives, matchVariant, maxSegmentSecFor, maxSegmentsFor, mergeClipLook, mergeExposedSettings, migrateEdgeOutputMode, migrateToItems, minSegmentSecFor, modelIdsByKindMode, modelToNodeTarget, modelsForInputMode, modelsWithFeature, motionGraphicsFeature, normalizeLottieLayers, normalizeMinimaxH3Resolution, normalizeModelInput, normalizeNodeModelParams, normalizePinterestUrl, normalizeRoleSlug, orderedLlmModels, parseAttributedDialogue, parseCharacterMentionToken, parseGroupHandle, parseHandleId, parseListExpression, parseLocationMentionToken, parseNodePresetExport, parseNodeRef, pickAiAvatarBucket, pickIds, pickLipSyncBucket, pickSwitchXFrameTier, pickVideoAnalysisBucket, planSheetGeneration, planSheetPanels, preferredInputModeForModel, presentTypes, presetDataMatches, presetEntries, qualityOptionsByKind, refHandleCategory, referenceModalityForHandle, referenceSheetCreditId, registerSidecarLoaders, renderAnalyzedScene, resolutionOptionsByKind, resolveAiAvatarCreditId, resolveAudioCrossfadeCurve, resolveCharacterAspectRatio, resolveCinematicCreditId, resolveConditionValue, resolveDefaultRole, resolveDescription, resolveDialogueVoices, resolveEffectiveSourceType, resolveEffectiveTier, resolveEntityAspect, resolveFieldMappings, resolveGvpAnchorWire, resolveImageGenCreditIdentifier, resolveIndex, resolveLabel, resolveListExpression, resolveLlmCreditId, resolveLocationFields, resolveLocationPresetCatalog, resolveLottieOverlaySrc, resolveNodeRefs, resolveObjectAspectRatio, resolvePipelineModel, resolveRelativeWindowToken, resolveScraperCreditId, resolveSelectorRefs, resolveSeparator, resolveSheetSections, resolveSlideshowTransition, resolveSourceThroughConnectedList, resolveStoredTier, resolveSwitchXCreditId, resolveVideoAnalysisModel, resolveVideoModeForInputs, resolveVideoProviderForMode, resolveXfadeName, rewriteSceneBindings, rewriteSlotTokens, rewriteSpeakerSlots, rgbaArrayToHex, roleToPhrase, runSelector, sanitizeRole, searchModelVariants, seedance2AudioLimitSec, segmentDurationsFor, selectByModulo, selectByNamedKey, selectByPredicate, selectListItems, selectLoraRoutingForMentions, selectRandom, settledWithLimit, slotVariationSchema, sortCharacterEntriesForDisplay, sortListItems, sourceRefKey, spliceDelimitedRows, splitByLoopDelimiter, splitGeneratedItems, spreadJsonArrayIfSingleton, stringifyPathResults, stripExportContent, stripTransientRuntimeData, supportedDefaultDimensions, supportsAdvancedMode, supportsEndAnchor, supportsExtendRender, toConnectedReference, toConnectedReferences, togglePick, tryParseJson, unwrapUnresolvedTokens, usageModeDirective, usageModeIncludesName, usageModeLabel, usdToCredits, validateAiAvatarPayload, validateCinematicAvatarPayload, validateDurationForFormat, validateModeActivation, validateModelInput, validateNoNestedGroups, validateObjects, validateProviderForNodeType, validateSubWorkflowRoutes, variantJobId, videoAnalysisCreditSegment, videoAnalysisNumWindows, videoAnalysisResultSchema, videoAuditCreditsForBucket, videoModelCanSpeakDialogue, videoModelSupportsAudio, videoProviderRequiresImage, windowAnalysisSchema, zipMergeLists };