@nodaro/sdk 2.26.0 → 2.27.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.cjs +150 -68
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +249 -10
- package/dist/index.d.ts +249 -10
- package/dist/index.js +90 -7
- package/dist/index.js.map +1 -1
- package/package.json +4 -3
package/dist/index.d.ts
CHANGED
|
@@ -1,8 +1,37 @@
|
|
|
1
|
-
import
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
1
|
+
import { GenericNode, GenericEdge, ConnectedReference, DescribedReference, CharacterMotionMetadata } from '@nodaro/shared/types';
|
|
2
|
+
export { ConnectedReference, DescribedReference, GenericEdge, GenericNode } from '@nodaro/shared/types';
|
|
3
|
+
import { WorkflowExport, WorkflowImportReport, ExecutionOutcome, NodeExecutionStateWire, ReduceStrategyId, ReduceMeta } from '@nodaro/shared/workflow';
|
|
4
|
+
export { ExecutionOutcome, NodeExecutionStatus, NodeSkipReason, OUTPUT_BEARING_NODE_STATUSES, ReduceMeta, ReduceStrategyId, WorkflowExport, WorkflowExportCharacter, WorkflowExportLocation, WorkflowExportObject, nodeStateMayCarryOutput } from '@nodaro/shared/workflow';
|
|
5
|
+
import { CollaboratorRole, WorkflowVisibility, OrganizationView, OrgKind, OrgSettings, OrgPage, OrgMemberView, MemberStatus, WorkspaceRole, InvitationDelivery, InvitationState, InvitationView, InvitationPreview, OrgAuditEntry, UsageQuery, UsageReport, UsageLogEntry, WorkspaceSummary, WorkspaceView, WorkspaceSettings, WorkspaceMemberView, JoinCodeView, MeOrganizations } from '@nodaro/shared/organizations';
|
|
6
|
+
export { InvitationDelivery, InvitationPreview, InvitationState, InvitationView, JoinCodeView, MeOrganizations, MemberStatus, OrgAuditEntry, OrgErrorCode, OrgKind, OrgMemberView, OrgPage, OrgRole, OrgSettings, OrgStatus, OrganizationSummary, OrganizationView, USAGE_GROUP_BYS, UsageGroupBy, UsageLogEntry, UsageQuery, UsageReport, UsageReportRow, UsageReportTotals, UsageVarianceRow, WORKSPACE_HEADER, WorkspaceMemberView, WorkspaceRole, WorkspaceSettings, WorkspaceSummary, WorkspaceView } from '@nodaro/shared/organizations';
|
|
7
|
+
import * as _nodaro_shared_scene3d from '@nodaro/shared/scene3d';
|
|
8
|
+
import { Scene3DReference, Scene3DPlan, Scene3DEditOperation, Scene3DV2EditOperation, Pro3DRenderSource, Pro3DRenderEngine, Pro3DRenderQuality, Pro3DRenderStyle, Scene3DJobOutputAny, Pro3DRenderJobOutput as Pro3DRenderJobOutput$1, Pro3DRenderCapabilities, Scene3DPlanV2, Pro3DRenderQuote as Pro3DRenderQuote$1, Scene3DAssetRef } from '@nodaro/shared/scene3d';
|
|
9
|
+
import { SocialSearchParams, SocialPost, SocialPlatform, SocialSearchMode, ListSavedPostsParams, ListSavedPostsResult, SavePostInput, SavedPost, SavedPostsLookupResult, UpdateSavedPostInput, TrackedCompetitor, CompetitorListResult, CompetitorDetail, CompetitorHistory, CompetitorCompareInput, CompetitorCompareResult, CreateCompetitorInput, UpdateCompetitorInput, CompetitorCardsResult, CompetitorLessonsResult, CompetitorActionsResult, CardActionResult, CompetitorDiscovery } from '@nodaro/shared/social';
|
|
10
|
+
export { ActionCard, ActionCardKind, ActionCardPriority, AdviceFamily, AdviceRecord, BrandLesson, BrandLessonKind, BrandLessons, BrandPlatformLessons, CardAction, CardActionResult, CardOutcome, CardOutcomeState, CardSnapshot, CardVerdict, CompetitorAboutPlatform, CompetitorAccountKey, CompetitorAccounts, CompetitorActionsResult, CompetitorBrandTally, CompetitorCardsResult, CompetitorCompareInput, CompetitorCompareResult, CompetitorDetail, CompetitorDiscovery, CompetitorHistory, CompetitorHistoryPlatform, CompetitorHistoryPoint, CompetitorLessonsResult, CompetitorListResult, CompetitorPeriod, CompetitorPeriodFollowers, CompetitorPeriodPlatform, CompetitorPlatformTally, CompetitorPost, CompetitorScan, CompetitorScanCounts, CompetitorScanSummary, CompetitorSchedule, CompetitorSearch, CompetitorSearchKind, CreateCompetitorInput, ListSavedPostsParams, ListSavedPostsResult, MarkCardInput, SavePostInput, SavedPost, SavedPostSource, SavedPostsLookupResult, SocialPlatform, SocialPost, SocialPostAuthor, SocialPostMedia, SocialPostMetrics, SocialSearchCount, SocialSearchMode, SocialSearchParams, SocialSearchPeriod, SocialSearchSort, SocialSearchVideoKind, TrackedCompetitor, UpdateCardActionInput, UpdateCompetitorInput, UpdateSavedPostInput } from '@nodaro/shared/social';
|
|
11
|
+
import { VideoCharacterReference, VideoOverlayRequest } from '@nodaro/shared/video';
|
|
12
|
+
export { VideoCharacterReference, VideoCharacterVoice } from '@nodaro/shared/video';
|
|
13
|
+
import { ModelInputAdjustment } from '@nodaro/shared/model-catalog';
|
|
14
|
+
import { VideoDepthProvider, VideoDepthModelSize, VideoDepthColormap, VideoDepthResolution, AudioFxPreset, OverlayAnchor, VideoMaskRequest, MaskCompositeRequest } from '@nodaro/shared/media';
|
|
15
|
+
export { AudioFxPreset, VideoDepthColormap, VideoDepthModelSize, VideoDepthProvider, VideoDepthResolution } from '@nodaro/shared/media';
|
|
16
|
+
import { DirectionFields, SubjectFields } from '@nodaro/prompts/prompt-builder';
|
|
17
|
+
import { OAuthScope, RecastSegmentPack, BrowseCommunityParams, BrowseCommunityResult, CommunityCard, CommunityFullDetail, CommunityEntityType, CloneListingResult, FavoriteListingResult, CommunityReportReason, ReportListingResult, PublishListingParams, PublishListingResult, SharedListing } from '@nodaro/shared/apps';
|
|
18
|
+
export { BrowseCommunityParams, BrowseCommunityResult, CloneListingResult, CommunityCard, CommunityEntityType, CommunityFullDetail, CommunityReportReason, CommunitySort, FavoriteListingResult, PublishListingParams, PublishListingResult, RECAST_SEGMENT_PACKS, RecastSegmentPack, ReportListingResult, SharedListing } from '@nodaro/shared/apps';
|
|
19
|
+
import { PersonValue } from '@nodaro/prompts/person';
|
|
20
|
+
export { PEOPLE, PERSON_DIMENSION_LABELS, PERSON_DIMENSION_ORDER, PersonValue, buildPersonHints } from '@nodaro/prompts/person';
|
|
21
|
+
import { EntityStyle, CharacterAspectRatio, CharacterAttachColumn, LocationAssetType, LocationAttachColumn, SurroundDirection, ObjectAssetType, ObjectAttachColumn, ObjectAspectRatio, CreatureAttachColumn } from '@nodaro/shared/entities';
|
|
22
|
+
export { CHARACTER_ASPECT_DEFAULTS, CHARACTER_ASPECT_OPTIONS, CHARACTER_STYLES, OBJECT_ASPECT_DEFAULTS as CREATURE_ASPECT_DEFAULTS, OBJECT_ASPECT_OPTIONS as CREATURE_ASPECT_OPTIONS, CREATURE_ATTACH_COLUMNS, CharacterAspectRatio, ObjectAspectRatio as CreatureAspectRatio, CreatureAttachColumn, EntityStyle, LOCATION_ASSET_TYPES, LOCATION_ATTACH_COLUMNS, LocationAssetType, LocationAttachColumn, OBJECT_ASPECT_DEFAULTS, OBJECT_ASPECT_OPTIONS, OBJECT_ASSET_TYPES, OBJECT_ATTACH_COLUMNS, ObjectAspectRatio, ObjectAssetType, ObjectAttachColumn, SURROUND_DIRECTIONS, SurroundDirection } from '@nodaro/shared/entities';
|
|
23
|
+
import { TtsProvider, DialogueProvider, TranscribeLane, TranscribeProvider } from '@nodaro/shared/models';
|
|
24
|
+
export { GeminiOmniVoicePresetId, TranscribeLane, TranscribeProvider } from '@nodaro/shared/models';
|
|
25
|
+
import { PipelineInput, PipelineStatus, PipelineMode, PipelineStageName, AnimateSubGate, ChatEnabledStage, ProposedChange, Voice, VoiceLibraryParams, VoiceLibraryResponse, VoiceClone } from '@nodaro/shared/pipeline';
|
|
26
|
+
export { AnimateSubGate, ChatEnabledStage, PipelineInput, PipelineMode, PipelineStageName, PipelineStatus, ProposedChange, SharedVoice, SubGateName, Voice, VoiceClone, VoiceLibraryParams, VoiceLibraryResponse } from '@nodaro/shared/pipeline';
|
|
27
|
+
import { WizardNodeContext, WizardQuestion, WizardSelection, RecommendedModel } from '@nodaro/prompts/doctrine';
|
|
28
|
+
export { RecommendedModel, WizardNodeContext, WizardOption, WizardQuestion, WizardSelection } from '@nodaro/prompts/doctrine';
|
|
29
|
+
import { CaptionLookId, SupportedFontName, CaptionStyle } from '@nodaro/shared/captions';
|
|
30
|
+
import { Transcript, Edl, EdlTargetAspect, EditPlanTier, EditPlanMode } from '@nodaro/shared/edl';
|
|
31
|
+
export { ChapterSet, EditPlanMode, EditPlanTier, Edl, EdlClipSet, Transcript, unwrapEditPlanOutput } from '@nodaro/shared/edl';
|
|
32
|
+
import { FactoryPreset } from '@nodaro/prompts/presets';
|
|
33
|
+
import { ListCollectionsResult, Collection, CreateCollectionInput, UpdateCollectionInput, ListCollectionRecordsParams, ListCollectionRecordsResult, CollectionRecord, BulkCollectionRecordsInput, BulkCollectionRecordsResult, CollectionRecordSource, AddCollectionRecordInput, AddCollectionRecordResult, CollectionExportFormat, CollectionUsage } from '@nodaro/shared/nodes';
|
|
34
|
+
export { AddCollectionRecordInput, AddCollectionRecordResult, Collection, CollectionCaps, CollectionDigestFormat, CollectionExportFormat, CollectionFieldValue, CollectionLimits, CollectionMedia, CollectionMediaType, CollectionRecord, CollectionRecordSource, CollectionWriteOutcome, CreateCollectionInput, ListCollectionRecordsParams, ListCollectionRecordsResult, ListCollectionsResult, PROMPT_PREFIX_KEY, PROMPT_SUFFIX_KEY, PromptAffixFields, UpdateCollectionInput } from '@nodaro/shared/nodes';
|
|
6
35
|
|
|
7
36
|
/**
|
|
8
37
|
* Auth provides the token used for `Authorization: Bearer <token>` on each request.
|
|
@@ -111,7 +140,13 @@ interface RunWorkflowParams {
|
|
|
111
140
|
* not used). A run through the API has nobody to review a Preview render, so
|
|
112
141
|
* a workflow whose Apply EDL render is set to Preview is refused
|
|
113
142
|
* (`preview_review_required`) unless the run sets it to Final:
|
|
114
|
-
* `{ [renderNodeId]: { quality: "final" } }`.
|
|
143
|
+
* `{ [renderNodeId]: { quality: "final" } }`. A Tighten Episode node with
|
|
144
|
+
* Review before render on is refused the same way (turn its review off). A
|
|
145
|
+
* failed execution records what held it — `preview_review_required` /
|
|
146
|
+
* `preview_render_nested` (a render), `…_review_on` (a review-on node) or
|
|
147
|
+
* `…_mixed` (both); match all six with `isPreviewRefusalCode` from
|
|
148
|
+
* `@nodaro/shared`. A review-on Tighten Episode fed by a List is refused
|
|
149
|
+
* with `use_case_review_list_driven`.
|
|
115
150
|
*/
|
|
116
151
|
inputOverrides?: Record<string, Record<string, unknown>>;
|
|
117
152
|
/**
|
|
@@ -486,7 +521,17 @@ interface Job {
|
|
|
486
521
|
* `usage_logs.status`. `null` when there is no usage log to report. Never
|
|
487
522
|
* changes the meaning of `credits` (the reserved amount) below. */
|
|
488
523
|
credit_status?: CreditStatus | null;
|
|
524
|
+
/** The credits HELD when the job was accepted. Never changes — a job can
|
|
525
|
+
* settle below it; read {@link Job.credits_charged} for what it cost. */
|
|
489
526
|
credits: number | null;
|
|
527
|
+
/**
|
|
528
|
+
* What the job actually cost once its hold settled. Can be lower than
|
|
529
|
+
* `credits` (the unused part goes back to the balance), `0` when the hold was
|
|
530
|
+
* refunded, `null` while the job is still running or when it reserved
|
|
531
|
+
* nothing of its own. Sum this — not `credits` — to total spend. Returned by
|
|
532
|
+
* `get()` and `list()`.
|
|
533
|
+
*/
|
|
534
|
+
credits_charged?: number | null;
|
|
490
535
|
job_type: string | null;
|
|
491
536
|
created_at: string;
|
|
492
537
|
started_at: string | null;
|
|
@@ -853,7 +898,7 @@ interface Scene3DEngineParams {
|
|
|
853
898
|
/** Structured authoring inputs; reference roles are interpreted by the platform. */
|
|
854
899
|
interface GenerateScene3DParams extends Record<string, unknown>, Scene3DEngineParams {
|
|
855
900
|
/** Existing GLBs selected by immutable revision/artifact IDs. Requires an import-capable advanced engine. */
|
|
856
|
-
inputAssets?: readonly
|
|
901
|
+
inputAssets?: readonly _nodaro_shared_scene3d.Scene3DInputAsset[];
|
|
857
902
|
prompt: string;
|
|
858
903
|
durationSeconds?: number;
|
|
859
904
|
fps?: number;
|
|
@@ -5753,7 +5798,10 @@ declare class AudioResource {
|
|
|
5753
5798
|
* `ratio` (1–20, overrides `amount`), `attackMs` (1–2000, default 20) and
|
|
5754
5799
|
* `releaseMs` (10–9000, default 500) are optional fine controls. A ducked mix
|
|
5755
5800
|
* sums its tracks rather than averaging them, so the voice keeps its level;
|
|
5756
|
-
* the price is the same with or without a duck.
|
|
5801
|
+
* the price is the same with or without a duck. `endAt` (`"longest"`, the
|
|
5802
|
+
* default, or `"voice"`) says where the mix ends: `"voice"` ends it when the
|
|
5803
|
+
* voice (the `duck.under` track) ends (needs `duck`). A video URL is a track
|
|
5804
|
+
* too: its audio is mixed, and a video with no sound is a silent track.
|
|
5757
5805
|
*/
|
|
5758
5806
|
mix(input: {
|
|
5759
5807
|
audioUrls: string[];
|
|
@@ -5766,6 +5814,7 @@ declare class AudioResource {
|
|
|
5766
5814
|
attackMs?: number;
|
|
5767
5815
|
releaseMs?: number;
|
|
5768
5816
|
};
|
|
5817
|
+
endAt?: "longest" | "voice";
|
|
5769
5818
|
}): Promise<{
|
|
5770
5819
|
jobId: string;
|
|
5771
5820
|
}>;
|
|
@@ -5909,6 +5958,49 @@ interface SignupGrantClaimResult {
|
|
|
5909
5958
|
/** True only when THIS call moved the credits — a repeat is `false` with the same state. */
|
|
5910
5959
|
granted: boolean;
|
|
5911
5960
|
}
|
|
5961
|
+
/**
|
|
5962
|
+
* One row of `GET /v1/credits/transactions` — a run's reservation and how it
|
|
5963
|
+
* settled.
|
|
5964
|
+
*
|
|
5965
|
+
* Which amount to read: a run first HOLDS credits and is then settled — charged
|
|
5966
|
+
* all or part of the hold, the rest returned. `credits_charged` is what the run
|
|
5967
|
+
* cost (`null` while the hold is still open, `0` once refunded); sum it for
|
|
5968
|
+
* spend. `credits_reserved` is the hold, which never changes. `credits_used`
|
|
5969
|
+
* is the same hold under its original name, kept for existing integrations.
|
|
5970
|
+
*/
|
|
5971
|
+
interface CreditTransaction {
|
|
5972
|
+
id: string;
|
|
5973
|
+
/** ISO-8601. Also the paging cursor: pass the last row's value as `cursor`. */
|
|
5974
|
+
created_at: string;
|
|
5975
|
+
/** Settled charge; `null` while `status` is `"reserved"`, `0` when refunded. */
|
|
5976
|
+
credits_charged: number | null;
|
|
5977
|
+
/** The hold taken when the run was accepted. */
|
|
5978
|
+
credits_reserved: number | null;
|
|
5979
|
+
/** The hold, under its original name. Prefer `credits_charged`. */
|
|
5980
|
+
credits_used: number | null;
|
|
5981
|
+
/** The model or operation the credits were for. */
|
|
5982
|
+
action: string | null;
|
|
5983
|
+
provider: string | null;
|
|
5984
|
+
/** Reservation lifecycle: `"reserved"`, `"committed"` or `"refunded"`. */
|
|
5985
|
+
status: string | null;
|
|
5986
|
+
/** The caller's own billing details for the run (model, which pool paid, …). */
|
|
5987
|
+
metadata: Record<string, unknown>;
|
|
5988
|
+
/** `"workspace"` when a class or team budget paid, not your balance. */
|
|
5989
|
+
payer: "user" | "workspace";
|
|
5990
|
+
workspaceId: string | null;
|
|
5991
|
+
}
|
|
5992
|
+
/** A page of {@link CreditTransaction}s, newest first. */
|
|
5993
|
+
interface CreditTransactionsPage {
|
|
5994
|
+
data: CreditTransaction[];
|
|
5995
|
+
/** Pass as `cursor` for the next page; `null` when there are no more rows. */
|
|
5996
|
+
nextCursor: string | null;
|
|
5997
|
+
}
|
|
5998
|
+
interface CreditTransactionsOptions {
|
|
5999
|
+
/** Rows per page, 1–50 (server default 20). */
|
|
6000
|
+
limit?: number;
|
|
6001
|
+
/** The `nextCursor` of the previous page. */
|
|
6002
|
+
cursor?: string;
|
|
6003
|
+
}
|
|
5912
6004
|
declare class CreditsResource {
|
|
5913
6005
|
private client;
|
|
5914
6006
|
constructor(client: NodaroClient);
|
|
@@ -5918,6 +6010,14 @@ declare class CreditsResource {
|
|
|
5918
6010
|
* other typed errors on the usual statuses.
|
|
5919
6011
|
*/
|
|
5920
6012
|
balance(): Promise<UserBalance>;
|
|
6013
|
+
/**
|
|
6014
|
+
* `GET /v1/credits/transactions` → one page of the caller's credit
|
|
6015
|
+
* transactions, newest first, with `nextCursor` for the next page (`null`
|
|
6016
|
+
* at the end). Read `credits_charged` for what each run cost — it can be
|
|
6017
|
+
* below the hold (`credits_reserved`) and is `null` while the hold is open.
|
|
6018
|
+
* Cloud-only route: a self-hosted instance answers 404.
|
|
6019
|
+
*/
|
|
6020
|
+
transactions(options?: CreditTransactionsOptions): Promise<CreditTransactionsPage>;
|
|
5921
6021
|
/**
|
|
5922
6022
|
* `POST /v1/credits/model-costs` → per-identifier credit cost, for editor
|
|
5923
6023
|
* cost previews. Capped at the first {@link MODEL_COSTS_LIMIT} identifiers
|
|
@@ -8791,6 +8891,90 @@ interface CameraSwitchInput {
|
|
|
8791
8891
|
/** Optionally associate this run with a workflow execution (display only). */
|
|
8792
8892
|
workflowId?: string;
|
|
8793
8893
|
}
|
|
8894
|
+
/**
|
|
8895
|
+
* Input for {@link EditResource.tightenEpisode} and
|
|
8896
|
+
* {@link EditResource.estimateTightenEpisode}: one recording in, the tightened
|
|
8897
|
+
* episode out. Only `mediaUrl` is required; every other field left out takes
|
|
8898
|
+
* the node's default.
|
|
8899
|
+
*/
|
|
8900
|
+
interface TightenEpisodeInput {
|
|
8901
|
+
/** The recording — a video or audio URL, up to 3 hours. */
|
|
8902
|
+
mediaUrl: string;
|
|
8903
|
+
/** Optional music bed, ducked under the voice and ending with the episode. */
|
|
8904
|
+
musicUrl?: string;
|
|
8905
|
+
/** `"video"` or `"audio"`; an audio recording always makes an audio episode. */
|
|
8906
|
+
output?: "video" | "audio";
|
|
8907
|
+
/**
|
|
8908
|
+
* Frame a video episode with Speaker View: an output aspect and a layout,
|
|
8909
|
+
* over automatic boxes on the speakers on screen. A layout the aspect does
|
|
8910
|
+
* not draw is snapped to one it does. `null` or absent: no framing.
|
|
8911
|
+
*/
|
|
8912
|
+
framing?: {
|
|
8913
|
+
aspect: EdlTargetAspect;
|
|
8914
|
+
layout: "auto" | "single" | "side-by-side" | "stacked" | "grid" | "pip";
|
|
8915
|
+
} | null;
|
|
8916
|
+
/** Captions on a video episode (on by default). */
|
|
8917
|
+
captions?: boolean;
|
|
8918
|
+
/** The captions' look. */
|
|
8919
|
+
captionStyle?: CaptionStyle;
|
|
8920
|
+
/**
|
|
8921
|
+
* Stop at a quick preview for a person to review; render the full-quality
|
|
8922
|
+
* episode afterwards with {@link EditResource.continueUseCase}
|
|
8923
|
+
* (`mode: "render-final"`).
|
|
8924
|
+
*/
|
|
8925
|
+
reviewBeforeRender?: boolean;
|
|
8926
|
+
/** The planner's tier. */
|
|
8927
|
+
planTier?: EditPlanTier;
|
|
8928
|
+
/** Editing instructions for the planner (up to 4 000 characters). */
|
|
8929
|
+
instructions?: string;
|
|
8930
|
+
/** A style guide for the planner (up to 4 000 characters). */
|
|
8931
|
+
styleGuide?: string;
|
|
8932
|
+
/** How far the music dips under the voice, 0–100 (default 75). */
|
|
8933
|
+
musicDuckAmount?: number;
|
|
8934
|
+
}
|
|
8935
|
+
/** What `tightenEpisode` and `continueUseCase` answer: the run's job to poll. */
|
|
8936
|
+
interface TightenEpisodeJobResult extends EditJobResult {
|
|
8937
|
+
/** The run's execution (absent on a deduplicated retry). */
|
|
8938
|
+
executionId?: string;
|
|
8939
|
+
/** `true` when an `Idempotency-Key` retry found the run already started: `jobId` is that run. */
|
|
8940
|
+
deduped?: boolean;
|
|
8941
|
+
}
|
|
8942
|
+
/**
|
|
8943
|
+
* What a Tighten Episode run is estimated at (`data`). Every credit amount is 0
|
|
8944
|
+
* on an edition without credits; `durationSec` is `null` when the recording's
|
|
8945
|
+
* length could not be read.
|
|
8946
|
+
*/
|
|
8947
|
+
interface TightenEpisodeEstimate {
|
|
8948
|
+
/** The whole run: its steps plus the fee. */
|
|
8949
|
+
totalCredits: number;
|
|
8950
|
+
/** The steps at their own rates. */
|
|
8951
|
+
stepsCredits: number;
|
|
8952
|
+
/** The per-run fee. */
|
|
8953
|
+
feeCredits: number;
|
|
8954
|
+
/** The recording's length, in seconds. */
|
|
8955
|
+
durationSec: number | null;
|
|
8956
|
+
}
|
|
8957
|
+
/** Input for {@link EditResource.continueUseCase}. */
|
|
8958
|
+
interface UseCaseContinueInput {
|
|
8959
|
+
/** The run to continue: the job `tightenEpisode` (or an earlier continuation) answered. */
|
|
8960
|
+
jobId: string;
|
|
8961
|
+
/**
|
|
8962
|
+
* `"from-failed"` re-runs what did not finish of a failed run;
|
|
8963
|
+
* `"render-final"` renders the full-quality episode after a review-on preview.
|
|
8964
|
+
*/
|
|
8965
|
+
mode: "from-failed" | "render-final";
|
|
8966
|
+
/** Render final only: the reviewer's edit of the plan (an EDL). */
|
|
8967
|
+
editedEdl?: unknown;
|
|
8968
|
+
}
|
|
8969
|
+
/** Per-call options for the Tighten Episode requests. */
|
|
8970
|
+
interface UseCaseRequestOptions {
|
|
8971
|
+
/**
|
|
8972
|
+
* Sent as the `Idempotency-Key` header. Reuse the same value when retrying
|
|
8973
|
+
* the same request and the server answers the run it already started
|
|
8974
|
+
* (`deduped: true`) instead of starting a second one.
|
|
8975
|
+
*/
|
|
8976
|
+
idempotencyKey?: string;
|
|
8977
|
+
}
|
|
8794
8978
|
/**
|
|
8795
8979
|
* Editorial primitives for podcast / long-form video editing, single-camera
|
|
8796
8980
|
* and multicam: measure the cameras' offsets ({@link audioSync}), plan the cut
|
|
@@ -8803,11 +8987,17 @@ interface CameraSwitchInput {
|
|
|
8803
8987
|
* - {@link editPlan} and {@link cameraSwitch} run on nodaro.ai; a self-hosted
|
|
8804
8988
|
* install relays them once it is connected (a 503
|
|
8805
8989
|
* `code: "nodaro_connection_required"` otherwise).
|
|
8990
|
+
* - {@link tightenEpisode} runs the whole chain (transcribe, plan, render, and
|
|
8991
|
+
* optionally captions, music and framing) in one call. It is core, but a
|
|
8992
|
+
* self-hosted install needs a nodaro.ai connection for the steps that run
|
|
8993
|
+
* there (a 503 `code: "nodaro_connection_required"` otherwise).
|
|
8994
|
+
* {@link continueUseCase} continues one of its runs.
|
|
8806
8995
|
* - {@link remapTranscript} is a PURE local transform (no request) — the same
|
|
8807
8996
|
* remap `applyEdl` performs on its `transcript`, exposed for callers that hold
|
|
8808
8997
|
* an EDL and a transcript and only want the re-timed transcript.
|
|
8809
8998
|
*
|
|
8810
|
-
* Every request method
|
|
8999
|
+
* Every request method except {@link estimateTightenEpisode} (a quote,
|
|
9000
|
+
* `{ data }`) returns {@link EditJobResult}; poll the `jobId` with
|
|
8811
9001
|
* `client.jobs.getStatus(jobId)`.
|
|
8812
9002
|
*/
|
|
8813
9003
|
declare class EditResource {
|
|
@@ -8835,6 +9025,35 @@ declare class EditResource {
|
|
|
8835
9025
|
* "invalid_edl"`) before any credits are reserved.
|
|
8836
9026
|
*/
|
|
8837
9027
|
applyEdl(input: ApplyEdlInput): Promise<EditJobResult>;
|
|
9028
|
+
/**
|
|
9029
|
+
* Tighten Episode (`POST /v1/tighten-episode`): tighten a podcast recording
|
|
9030
|
+
* in one call — transcribe, cut the silences and filler, render, with
|
|
9031
|
+
* optional captions, music and framing. Answers the run's job to poll; its
|
|
9032
|
+
* `output_data` holds the episode. The run is priced as its steps at their own
|
|
9033
|
+
* rates plus the listed per-run fee. Quote it first with
|
|
9034
|
+
* {@link estimateTightenEpisode}.
|
|
9035
|
+
*/
|
|
9036
|
+
tightenEpisode(input: TightenEpisodeInput, options?: UseCaseRequestOptions): Promise<TightenEpisodeJobResult>;
|
|
9037
|
+
/**
|
|
9038
|
+
* What a Tighten Episode run is estimated at (`POST /v1/tighten-episode/estimate`):
|
|
9039
|
+
* its steps at their own rates plus its per-run fee. Nothing is created or
|
|
9040
|
+
* charged. The estimate leans high: the render is priced at the recording's
|
|
9041
|
+
* full length, while the charge follows the minutes actually rendered.
|
|
9042
|
+
*/
|
|
9043
|
+
estimateTightenEpisode(input: TightenEpisodeInput): Promise<{
|
|
9044
|
+
data: TightenEpisodeEstimate;
|
|
9045
|
+
}>;
|
|
9046
|
+
/**
|
|
9047
|
+
* Continue a Tighten Episode run as a new job (`POST /v1/tighten-episode/continue`):
|
|
9048
|
+
* `"from-failed"` keeps the steps that finished and runs the rest (the fee is
|
|
9049
|
+
* held again; the failed run's was refunded); `"render-final"` renders the
|
|
9050
|
+
* full-quality episode after a review-on preview, with the preview's
|
|
9051
|
+
* settings and no fee. A refusal that names another job
|
|
9052
|
+
* (`already_running`, `continuation_superseded`,
|
|
9053
|
+
* `render_final_already_rendered`) throws a `ContinuationRefusedError`
|
|
9054
|
+
* carrying that `jobId`.
|
|
9055
|
+
*/
|
|
9056
|
+
continueUseCase(input: UseCaseContinueInput, options?: UseCaseRequestOptions): Promise<TightenEpisodeJobResult>;
|
|
8838
9057
|
/**
|
|
8839
9058
|
* Plan a transcript-driven cut (`POST /v1/edit-plan`). Reads a timed
|
|
8840
9059
|
* transcript (plus optional silence ranges) and the media sources, and plans
|
|
@@ -9108,6 +9327,24 @@ declare class StudioOpError extends NodaroError {
|
|
|
9108
9327
|
/** Zero-based index into the `ops` array that was sent. */
|
|
9109
9328
|
opIndex: number);
|
|
9110
9329
|
}
|
|
9330
|
+
/**
|
|
9331
|
+
* A 409 that names the job to turn to instead: continuing a use-case run
|
|
9332
|
+
* (`client.edit.continueUseCase`) answers `already_running` (a continuation is
|
|
9333
|
+
* under way, or one that already completed — follow `jobId`),
|
|
9334
|
+
* `continuation_superseded` (a later continuation failed too — continue
|
|
9335
|
+
* `jobId` instead) or `render_final_already_rendered` (a Render final with this
|
|
9336
|
+
* very edit already completed — `jobId` holds the result). `code` and `status`
|
|
9337
|
+
* are what the server sent. Selected for exactly those three codes when the
|
|
9338
|
+
* answer carries a top-level `jobId`; every other 409 stays a plain
|
|
9339
|
+
* `NodaroError`.
|
|
9340
|
+
*/
|
|
9341
|
+
declare class ContinuationRefusedError extends NodaroError {
|
|
9342
|
+
/** The job the refusal names. */
|
|
9343
|
+
readonly jobId: string;
|
|
9344
|
+
constructor(message: string, code: string,
|
|
9345
|
+
/** The job the refusal names. */
|
|
9346
|
+
jobId: string);
|
|
9347
|
+
}
|
|
9111
9348
|
/**
|
|
9112
9349
|
* HTTP 422 `job_blocked`. A job policy registered by this deployment refused
|
|
9113
9350
|
* the generation **before it ran** — no job was created, nothing was reserved
|
|
@@ -9263,7 +9500,9 @@ interface ApiErrorBody {
|
|
|
9263
9500
|
};
|
|
9264
9501
|
/** The server framework's own top-level message, e.g. for a route it does not have. */
|
|
9265
9502
|
message?: unknown;
|
|
9503
|
+
/** A refusal that names another job (see {@link ContinuationRefusedError}). */
|
|
9504
|
+
jobId?: unknown;
|
|
9266
9505
|
}
|
|
9267
9506
|
declare function throwFromResponse(status: number, body: ApiErrorBody): never;
|
|
9268
9507
|
|
|
9269
|
-
export { type AccessTokenResponse, type AddCaptionsInput, type AddCollaboratorInput, type AnalyzeInput, type AnalyzeResult, type AppRun, type AppRunResult, type ApplyChatProposalResult, type ApplyEdlInput, type ApproveCreatureMainImageResult, type ApproveMainImageResult, type ApproveObjectMainImageResult, type ApprovePortraitResult, AppsResource, type AssembleNarratedVideoParams, AudioResource, type AudioSyncInput, type AudioSyncOffset, type AudioSyncResult, type AudioSyncSource, type Auth, type BranchPipelineInput, type BranchPipelineResult, type BrowseTemplatesParams, type BrowseTemplatesResult, CREATURE_ASSET_TYPES, CallbackAuth, type CameraSwitchInput, type CancelExecutionParams, type CancelJobResult, type CaptionEntry, type CaptionLookInput, type CaptionSegmentInput, type CatalogsListResponse, CatalogsResource, type Character, type CharacterDetail, type CharacterUsage, CharactersResource, type ChatStageResult, type ChatTurn, type ClientOptions, type CloneTemplateParams, type CloneTemplateResult, type Collaborator, CollectionsResource, CommunityResource, CompetitorsResource, type ContinueVideoProResult, type CopilotMemorySavedFrameData, type CopilotMessage, type CopilotMessagePart, type CopilotMetadataFrameData, type CopilotModelTier, CopilotResource, type CopilotRunMode, type CopilotRunProposalFrameData, type CopilotRunProposalNode, type CopilotStreamFrame, type CopilotStreamOptions, type CopilotSurface, type CopilotThread, type CopilotThreadWorkflow, type CopilotToolCallFrameData, type CopilotWiredAsset, type CopilotWorkflowCreatedFrameData, type CopilotWorkflowUpdateFrameData, type CreateCopilotThreadInput, type CreateCreatureInput, type CreateDeveloperAppInput, type CreateDeveloperAppResult, type CreateLocationInput, type CreateObjectInput, type CreateOrgInput, type CreateProjectInput, type CreateRecastInput, type CreateShotInput, type CreateWorkflowInput, type CreateWorkspaceInput, type Creature, type CreatureAssetType, type CreatureDetail, type CreatureReferencePhoto, type CreatureReferencePhotoKind, type CreatureVoice, CreaturesResource, type CreditStatus, CreditsResource, type DeleteAppRunResult, type DeleteJobResult, type DeveloperApp, type DeveloperAppKind, type DeveloperAppScope, type DeveloperAppStatus, DeveloperAppsResource, type DownloadVideoProgress, type DroppedCollaborator, type DubbingInput, type DuplicateCharacterInput, type EditJobResult, type EditPlanInput, type EditPlanSource, EditResource, type EditScene3DParams, type EnhanceInput, type EstimateRecastInput, type EstimateRecastRescoreInput, type ExchangeCodeInput, type ExecutionStatus, type ExecutionTriggerType, ExecutionsResource, type FactoryPresetsResult, ForbiddenError, type GenerateAssetInput, type GenerateCharacterInput, type GenerateCharacterResult, type GenerateCreatureAssetInput, type GenerateCreatureAssetResult, type GenerateCreatureInput, type GenerateCreatureMotionInput, type GenerateCreatureMotionResult, type GenerateCreatureResult, type GenerateImageParams, type GenerateInput, type GenerateLocationAssetInput, type GenerateLocationInput, type GenerateLocationMotionInput, type GenerateLocationResult, type GenerateMotionInput, type GenerateObjectAssetInput, type GenerateObjectAssetResult, type GenerateObjectInput, type GenerateObjectMotionInput, type GenerateObjectMotionResult, type GenerateObjectResult, type GenerateScene3DParams, type GenerateSurroundContinuationInput, type GenerateVideoParams, type GetCharacterOptions, type GetPickerCatalogOptions, type GetProductionOptions, InsufficientCreditsError, type InviteInput, type Job, JobAbortedError, JobBlockedError, type JobErrorHint, JobFailedError, JobHeldError, type JobStatus, type JobStatusResult, JobTimeoutError, JobsResource, type LibraryAsset, LibraryResource, type ListAppRunsParams, type ListAppsParams, type ListAppsResult, type ListCharactersParams, type ListCharactersResult, type ListCreaturesParams, type ListExecutionsForWorkflowParams, type ListExecutionsPage, type ListInvitationsOptions, type ListJobsPage, type ListJobsParams, type ListLibraryParams, type ListLibraryResult, type ListLocationsParams, type ListModelsOptions, type ListObjectsParams, type ListStudioProductionsOptions, type ListWorkflowsParams, LlmResource, type LlmStructuredInput, type LlmStructuredJobInput, type LlmStructuredJobOutput, type LlmStructuredResult, type Location, type LocationDetail, type LocationReferencePhoto, type LocationReferencePhotoKind, LocationsResource, type MediaProcessInput, type MediaProcessResult, MediaResource, type ModelCostsResult, type ModelFamilyGroup, type ModelSummary, type ModelsListResult, ModelsResource, NodaroClient, NodaroError, type NodeCategory, type NodeDescriptor, type NodeExecutionState, type NodeInputField, type NodeInputSchema, type NodeJobOutput, type NodePreset, type NodePresetGroup, NodesResource, NotFoundError, type OAuthAppInfo, OAuthResource, type Object$1 as Object, type ObjectCategory, type ObjectDetail, type ObjectReferencePhoto, type ObjectReferencePhotoKind, ObjectsResource, OrganizationsResource, type OutputType, type OverlayPlacement, type PendingApproval, type PickerCatalog, type PickerCatalogSection, type PickerCatalogSummary, PickerCatalogsResource, type PickerDimension, type PickerOption, type PipelineRecord, type PipelineTimeline, PipelinesResource, type PolicyBlockHint, PresetsResource, type Pro3DRenderJobOutput, type Pro3DRenderParams, type Pro3DRenderQuote, type Pro3DRenderRunOptions, type Pro3DRenderRunParams, type Project, type ProjectedCatalog, type ProjectedCatalogDimension, type ProjectedCatalogOption, type ProjectedCatalogSection, ProjectsResource, PromptHelperResource, type PromptResult, type PublishedApp, type PublishedAppDetail, RateLimitedError, type RecaptionCreatureResult, type RecaptionLocationResult, type RecaptionObjectResult, type RecaptionResult, type RecastAudioLayerName, type RecastAudioManifestV1, type RecastAudioMix, type RecastAudioMixControl, type RecastAudioSectionReplacement, type RecastEstimate, type RecastRescoreOperation, type RecastRescoreQuote, type RecastRescoreReplacement, type RecastRescoreRequestV2, type RecastRescoreResponse, RecastResource, type RecastRunSnapshot, type RecastScriptImportResult, type RecastScriptValidation, type RecastScriptValidationError, type ReduceInput, ReduceResource, type ReduceResult, type ReferenceCaptionParams, type ReferencePhoto, type ReferencePhotoKind, type RenderFinalParams, type RenderFinalQuote, type RenderScene3DParams, type ResolveRecastGateInput, type RetainedScene3DEditParams, type RetainedScene3DEditResult, type RotateSecretResult, type RunAndWaitOptions, type RunAppOptions, type RunManyResult, type RunNodeAdjustment, type RunNodeOptions, type RunNodeResult, type RunWorkflowParams, type RunWorkflowResult, SCENE3D_DELIVERY_ASSET_USAGE, type SafetyBlockHint, SavedPostsResource, type Scene3DAuthoringEngine, type Scene3DCapabilities, type Scene3DDelivery, type Scene3DDeliveryAsset, type Scene3DDeliveryAssetKind, type Scene3DJobOutput, Scene3DResource, type SharedWorkflow, type Shot, type ShotEntityRef, type ShotMode, ShotsResource, type SignupGrantClaimResult, type SignupKeys, type SilenceDetectInput, type SilenceRanges, type SocialSearchJobOutput, type SplitMediaInput, type SplitMediaOutput, StaticTokenAuth, type StopVideoProResult, StorageExceededError, type StructuredReferenceParams, type StudioClientRequestId, type StudioCloneRequest, type StudioCreateProductionRequest, type StudioDescribeRequest, type StudioDocumentJson, type StudioEditInput, type StudioExportPlanOptions, type StudioExportPlanResponse, type StudioExportStep, type StudioFrameRequest, type StudioGenerateEstimate, type StudioGenerateOptions, type StudioGenerateRequest, type StudioGenerateResponse, type StudioGenerateResult, type StudioGenerationReply, type StudioImportSummary, type StudioJobStartedResponse, type StudioKeyframeAcceptanceInput, type StudioKeyframeGenerationInput, type StudioKeyframeRecord, type StudioListProductionsResponse, type StudioMediaResponse, type StudioMusicRequest, type StudioOpClass, StudioOpError, type StudioOpsDryRunReceipt, type StudioOpsDryRunResponse, type StudioOpsImpact, type StudioOpsReceipt, type StudioOpsRequest, type StudioOpsResponse, type StudioPlanIssue, StudioPreviewAppliedError, StudioPreviewUnavailable, type StudioProduction, type StudioProductionCapabilities, type StudioProductionDetail, type StudioProductionRecord, type StudioProductionReply, type StudioProductionResponse, StudioProductionsResource, type StudioReconcileResponse, StudioResource, type StudioRevoiceRequest, type StudioShotGenerationInput, type StudioSkillResponse, type StudioValidatePlanResponse, type StudioVideoLane, type StudioVoiceRequest, type Template, type TemplateBrowseCard, type TemplateSort, TemplatesResource, type TextToPickerParams, type TextToPickerResult, type TextToSpeechParams, type TextToVideoParams, type TranscribeJobOutput, type TranscribeWord, type TutorialCategory, type TutorialFlowItem, type TutorialVideoItem, TutorialsResource, UnauthorizedError, type UpdateCreatureInput, type UpdateCreatureResult, type UpdateDeveloperAppInput, type UpdateLocationInput, type UpdateLocationResult, type UpdateObjectInput, type UpdateObjectResult, type UpdateProjectInput, type UpdateShotInput, type UpdateWorkflowInput, type UploadResult, UploadsResource, type UpsertCharacterInput, type UpsertCharacterResult, type UpsertCreatureInput, type UpsertCreatureResult, type UpsertObjectInput, type UpsertObjectResult, type UserBalance, type UserIdentity, type VcpAnalysis, type VcpAnalysisSpeaker, type VcpAnalyzeInput, type VcpExportInput, type VcpExportTrack, type VideoDepthParams, type VideoMetadata, VideoProResource, type VideoUpscaleParams, type VoiceChangerProInput, type VoiceChangerProVoice, type VoiceDesignInput, type VoiceRemixInput, VoicesResource, type Workflow, type WorkflowConflictCode, WorkflowConflictError, type WorkflowExecution, type WorkflowExecutionSummary, WorkflowsResource, WorkspacesResource, buildPersonSeedPrompt, createClient, isStudioGenerateEstimate, supabaseAuth, throwFromResponse };
|
|
9508
|
+
export { type AccessTokenResponse, type AddCaptionsInput, type AddCollaboratorInput, type AnalyzeInput, type AnalyzeResult, type AppRun, type AppRunResult, type ApplyChatProposalResult, type ApplyEdlInput, type ApproveCreatureMainImageResult, type ApproveMainImageResult, type ApproveObjectMainImageResult, type ApprovePortraitResult, AppsResource, type AssembleNarratedVideoParams, AudioResource, type AudioSyncInput, type AudioSyncOffset, type AudioSyncResult, type AudioSyncSource, type Auth, type BranchPipelineInput, type BranchPipelineResult, type BrowseTemplatesParams, type BrowseTemplatesResult, CREATURE_ASSET_TYPES, CallbackAuth, type CameraSwitchInput, type CancelExecutionParams, type CancelJobResult, type CaptionEntry, type CaptionLookInput, type CaptionSegmentInput, type CatalogsListResponse, CatalogsResource, type Character, type CharacterDetail, type CharacterUsage, CharactersResource, type ChatStageResult, type ChatTurn, type ClientOptions, type CloneTemplateParams, type CloneTemplateResult, type Collaborator, CollectionsResource, CommunityResource, CompetitorsResource, ContinuationRefusedError, type ContinueVideoProResult, type CopilotMemorySavedFrameData, type CopilotMessage, type CopilotMessagePart, type CopilotMetadataFrameData, type CopilotModelTier, CopilotResource, type CopilotRunMode, type CopilotRunProposalFrameData, type CopilotRunProposalNode, type CopilotStreamFrame, type CopilotStreamOptions, type CopilotSurface, type CopilotThread, type CopilotThreadWorkflow, type CopilotToolCallFrameData, type CopilotWiredAsset, type CopilotWorkflowCreatedFrameData, type CopilotWorkflowUpdateFrameData, type CreateCopilotThreadInput, type CreateCreatureInput, type CreateDeveloperAppInput, type CreateDeveloperAppResult, type CreateLocationInput, type CreateObjectInput, type CreateOrgInput, type CreateProjectInput, type CreateRecastInput, type CreateShotInput, type CreateWorkflowInput, type CreateWorkspaceInput, type Creature, type CreatureAssetType, type CreatureDetail, type CreatureReferencePhoto, type CreatureReferencePhotoKind, type CreatureVoice, CreaturesResource, type CreditStatus, type CreditTransaction, type CreditTransactionsOptions, type CreditTransactionsPage, CreditsResource, type DeleteAppRunResult, type DeleteJobResult, type DeveloperApp, type DeveloperAppKind, type DeveloperAppScope, type DeveloperAppStatus, DeveloperAppsResource, type DownloadVideoProgress, type DroppedCollaborator, type DubbingInput, type DuplicateCharacterInput, type EditJobResult, type EditPlanInput, type EditPlanSource, EditResource, type EditScene3DParams, type EnhanceInput, type EstimateRecastInput, type EstimateRecastRescoreInput, type ExchangeCodeInput, type ExecutionStatus, type ExecutionTriggerType, ExecutionsResource, type FactoryPresetsResult, ForbiddenError, type GenerateAssetInput, type GenerateCharacterInput, type GenerateCharacterResult, type GenerateCreatureAssetInput, type GenerateCreatureAssetResult, type GenerateCreatureInput, type GenerateCreatureMotionInput, type GenerateCreatureMotionResult, type GenerateCreatureResult, type GenerateImageParams, type GenerateInput, type GenerateLocationAssetInput, type GenerateLocationInput, type GenerateLocationMotionInput, type GenerateLocationResult, type GenerateMotionInput, type GenerateObjectAssetInput, type GenerateObjectAssetResult, type GenerateObjectInput, type GenerateObjectMotionInput, type GenerateObjectMotionResult, type GenerateObjectResult, type GenerateScene3DParams, type GenerateSurroundContinuationInput, type GenerateVideoParams, type GetCharacterOptions, type GetPickerCatalogOptions, type GetProductionOptions, InsufficientCreditsError, type InviteInput, type Job, JobAbortedError, JobBlockedError, type JobErrorHint, JobFailedError, JobHeldError, type JobStatus, type JobStatusResult, JobTimeoutError, JobsResource, type LibraryAsset, LibraryResource, type ListAppRunsParams, type ListAppsParams, type ListAppsResult, type ListCharactersParams, type ListCharactersResult, type ListCreaturesParams, type ListExecutionsForWorkflowParams, type ListExecutionsPage, type ListInvitationsOptions, type ListJobsPage, type ListJobsParams, type ListLibraryParams, type ListLibraryResult, type ListLocationsParams, type ListModelsOptions, type ListObjectsParams, type ListStudioProductionsOptions, type ListWorkflowsParams, LlmResource, type LlmStructuredInput, type LlmStructuredJobInput, type LlmStructuredJobOutput, type LlmStructuredResult, type Location, type LocationDetail, type LocationReferencePhoto, type LocationReferencePhotoKind, LocationsResource, type MediaProcessInput, type MediaProcessResult, MediaResource, type ModelCostsResult, type ModelFamilyGroup, type ModelSummary, type ModelsListResult, ModelsResource, NodaroClient, NodaroError, type NodeCategory, type NodeDescriptor, type NodeExecutionState, type NodeInputField, type NodeInputSchema, type NodeJobOutput, type NodePreset, type NodePresetGroup, NodesResource, NotFoundError, type OAuthAppInfo, OAuthResource, type Object$1 as Object, type ObjectCategory, type ObjectDetail, type ObjectReferencePhoto, type ObjectReferencePhotoKind, ObjectsResource, OrganizationsResource, type OutputType, type OverlayPlacement, type PendingApproval, type PickerCatalog, type PickerCatalogSection, type PickerCatalogSummary, PickerCatalogsResource, type PickerDimension, type PickerOption, type PipelineRecord, type PipelineTimeline, PipelinesResource, type PolicyBlockHint, PresetsResource, type Pro3DRenderJobOutput, type Pro3DRenderParams, type Pro3DRenderQuote, type Pro3DRenderRunOptions, type Pro3DRenderRunParams, type Project, type ProjectedCatalog, type ProjectedCatalogDimension, type ProjectedCatalogOption, type ProjectedCatalogSection, ProjectsResource, PromptHelperResource, type PromptResult, type PublishedApp, type PublishedAppDetail, RateLimitedError, type RecaptionCreatureResult, type RecaptionLocationResult, type RecaptionObjectResult, type RecaptionResult, type RecastAudioLayerName, type RecastAudioManifestV1, type RecastAudioMix, type RecastAudioMixControl, type RecastAudioSectionReplacement, type RecastEstimate, type RecastRescoreOperation, type RecastRescoreQuote, type RecastRescoreReplacement, type RecastRescoreRequestV2, type RecastRescoreResponse, RecastResource, type RecastRunSnapshot, type RecastScriptImportResult, type RecastScriptValidation, type RecastScriptValidationError, type ReduceInput, ReduceResource, type ReduceResult, type ReferenceCaptionParams, type ReferencePhoto, type ReferencePhotoKind, type RenderFinalParams, type RenderFinalQuote, type RenderScene3DParams, type ResolveRecastGateInput, type RetainedScene3DEditParams, type RetainedScene3DEditResult, type RotateSecretResult, type RunAndWaitOptions, type RunAppOptions, type RunManyResult, type RunNodeAdjustment, type RunNodeOptions, type RunNodeResult, type RunWorkflowParams, type RunWorkflowResult, SCENE3D_DELIVERY_ASSET_USAGE, type SafetyBlockHint, SavedPostsResource, type Scene3DAuthoringEngine, type Scene3DCapabilities, type Scene3DDelivery, type Scene3DDeliveryAsset, type Scene3DDeliveryAssetKind, type Scene3DJobOutput, Scene3DResource, type SharedWorkflow, type Shot, type ShotEntityRef, type ShotMode, ShotsResource, type SignupGrantClaimResult, type SignupKeys, type SilenceDetectInput, type SilenceRanges, type SocialSearchJobOutput, type SplitMediaInput, type SplitMediaOutput, StaticTokenAuth, type StopVideoProResult, StorageExceededError, type StructuredReferenceParams, type StudioClientRequestId, type StudioCloneRequest, type StudioCreateProductionRequest, type StudioDescribeRequest, type StudioDocumentJson, type StudioEditInput, type StudioExportPlanOptions, type StudioExportPlanResponse, type StudioExportStep, type StudioFrameRequest, type StudioGenerateEstimate, type StudioGenerateOptions, type StudioGenerateRequest, type StudioGenerateResponse, type StudioGenerateResult, type StudioGenerationReply, type StudioImportSummary, type StudioJobStartedResponse, type StudioKeyframeAcceptanceInput, type StudioKeyframeGenerationInput, type StudioKeyframeRecord, type StudioListProductionsResponse, type StudioMediaResponse, type StudioMusicRequest, type StudioOpClass, StudioOpError, type StudioOpsDryRunReceipt, type StudioOpsDryRunResponse, type StudioOpsImpact, type StudioOpsReceipt, type StudioOpsRequest, type StudioOpsResponse, type StudioPlanIssue, StudioPreviewAppliedError, StudioPreviewUnavailable, type StudioProduction, type StudioProductionCapabilities, type StudioProductionDetail, type StudioProductionRecord, type StudioProductionReply, type StudioProductionResponse, StudioProductionsResource, type StudioReconcileResponse, StudioResource, type StudioRevoiceRequest, type StudioShotGenerationInput, type StudioSkillResponse, type StudioValidatePlanResponse, type StudioVideoLane, type StudioVoiceRequest, type Template, type TemplateBrowseCard, type TemplateSort, TemplatesResource, type TextToPickerParams, type TextToPickerResult, type TextToSpeechParams, type TextToVideoParams, type TightenEpisodeEstimate, type TightenEpisodeInput, type TightenEpisodeJobResult, type TranscribeJobOutput, type TranscribeWord, type TutorialCategory, type TutorialFlowItem, type TutorialVideoItem, TutorialsResource, UnauthorizedError, type UpdateCreatureInput, type UpdateCreatureResult, type UpdateDeveloperAppInput, type UpdateLocationInput, type UpdateLocationResult, type UpdateObjectInput, type UpdateObjectResult, type UpdateProjectInput, type UpdateShotInput, type UpdateWorkflowInput, type UploadResult, UploadsResource, type UpsertCharacterInput, type UpsertCharacterResult, type UpsertCreatureInput, type UpsertCreatureResult, type UpsertObjectInput, type UpsertObjectResult, type UseCaseContinueInput, type UseCaseRequestOptions, type UserBalance, type UserIdentity, type VcpAnalysis, type VcpAnalysisSpeaker, type VcpAnalyzeInput, type VcpExportInput, type VcpExportTrack, type VideoDepthParams, type VideoMetadata, VideoProResource, type VideoUpscaleParams, type VoiceChangerProInput, type VoiceChangerProVoice, type VoiceDesignInput, type VoiceRemixInput, VoicesResource, type Workflow, type WorkflowConflictCode, WorkflowConflictError, type WorkflowExecution, type WorkflowExecutionSummary, WorkflowsResource, WorkspacesResource, buildPersonSeedPrompt, createClient, isStudioGenerateEstimate, supabaseAuth, throwFromResponse };
|
package/dist/index.js
CHANGED
|
@@ -1,7 +1,16 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
1
|
+
export { OUTPUT_BEARING_NODE_STATUSES, nodeStateMayCarryOutput } from '@nodaro/shared/workflow';
|
|
2
|
+
import { nodeRunRoute, NODE_TYPES_WITHOUT_RUN_ROUTE, NODE_RUN_ROUTES } from '@nodaro/shared/nodes';
|
|
3
|
+
export { PROMPT_PREFIX_KEY, PROMPT_SUFFIX_KEY } from '@nodaro/shared/nodes';
|
|
4
|
+
import { SOCIAL_POST_NODE_PLATFORM } from '@nodaro/shared/social';
|
|
5
|
+
import { SCENE3D_V2_LIMITS } from '@nodaro/shared/scene3d';
|
|
6
|
+
import { buildPersonHints } from '@nodaro/prompts/person';
|
|
7
|
+
export { PEOPLE, PERSON_DIMENSION_LABELS, PERSON_DIMENSION_ORDER, buildPersonHints } from '@nodaro/prompts/person';
|
|
8
|
+
export { CHARACTER_ASPECT_DEFAULTS, CHARACTER_ASPECT_OPTIONS, CHARACTER_STYLES, OBJECT_ASPECT_DEFAULTS as CREATURE_ASPECT_DEFAULTS, OBJECT_ASPECT_OPTIONS as CREATURE_ASPECT_OPTIONS, CREATURE_ATTACH_COLUMNS, LOCATION_ASSET_TYPES, LOCATION_ATTACH_COLUMNS, OBJECT_ASPECT_DEFAULTS, OBJECT_ASPECT_OPTIONS, OBJECT_ASSET_TYPES, OBJECT_ATTACH_COLUMNS, SURROUND_DIRECTIONS } from '@nodaro/shared/entities';
|
|
9
|
+
import { resolveEditPlanSources, describeAudioSyncOffsetIssue, transcriptSpeakerLabels, remapTranscriptThroughEdl } from '@nodaro/shared/edl';
|
|
10
|
+
export { unwrapEditPlanOutput } from '@nodaro/shared/edl';
|
|
11
|
+
import { WORKSPACE_HEADER } from '@nodaro/shared/organizations';
|
|
12
|
+
export { USAGE_GROUP_BYS, WORKSPACE_HEADER } from '@nodaro/shared/organizations';
|
|
13
|
+
export { RECAST_SEGMENT_PACKS } from '@nodaro/shared/apps';
|
|
5
14
|
|
|
6
15
|
// src/binary-response.ts
|
|
7
16
|
async function readBinaryResponse(response, maxBytes) {
|
|
@@ -112,6 +121,19 @@ var StudioOpError = class extends NodaroError {
|
|
|
112
121
|
}
|
|
113
122
|
opIndex;
|
|
114
123
|
};
|
|
124
|
+
var CONTINUATION_REFUSAL_CODES = /* @__PURE__ */ new Set([
|
|
125
|
+
"already_running",
|
|
126
|
+
"continuation_superseded",
|
|
127
|
+
"render_final_already_rendered"
|
|
128
|
+
]);
|
|
129
|
+
var ContinuationRefusedError = class extends NodaroError {
|
|
130
|
+
constructor(message, code, jobId) {
|
|
131
|
+
super(message, code, 409);
|
|
132
|
+
this.jobId = jobId;
|
|
133
|
+
this.name = "ContinuationRefusedError";
|
|
134
|
+
}
|
|
135
|
+
jobId;
|
|
136
|
+
};
|
|
115
137
|
var JobBlockedError = class extends NodaroError {
|
|
116
138
|
constructor(message = "Blocked by this deployment's content policy") {
|
|
117
139
|
super(message, "job_blocked", 422);
|
|
@@ -184,6 +206,9 @@ function throwFromResponse(status, body) {
|
|
|
184
206
|
if (status >= 400 && status < 500 && typeof body.error?.opIndex === "number") {
|
|
185
207
|
throw new StudioOpError(message, code, status, body.error.opIndex);
|
|
186
208
|
}
|
|
209
|
+
if (status === 409 && CONTINUATION_REFUSAL_CODES.has(code) && typeof body.jobId === "string") {
|
|
210
|
+
throw new ContinuationRefusedError(message, code, body.jobId);
|
|
211
|
+
}
|
|
187
212
|
if (status === 422 && code === "job_blocked") throw new JobBlockedError(message);
|
|
188
213
|
if (status === 403 && code === "insufficient_scope") {
|
|
189
214
|
throw new ForbiddenError(message, body.error?.missingScope);
|
|
@@ -2536,7 +2561,10 @@ var AudioResource = class {
|
|
|
2536
2561
|
* `ratio` (1–20, overrides `amount`), `attackMs` (1–2000, default 20) and
|
|
2537
2562
|
* `releaseMs` (10–9000, default 500) are optional fine controls. A ducked mix
|
|
2538
2563
|
* sums its tracks rather than averaging them, so the voice keeps its level;
|
|
2539
|
-
* the price is the same with or without a duck.
|
|
2564
|
+
* the price is the same with or without a duck. `endAt` (`"longest"`, the
|
|
2565
|
+
* default, or `"voice"`) says where the mix ends: `"voice"` ends it when the
|
|
2566
|
+
* voice (the `duck.under` track) ends (needs `duck`). A video URL is a track
|
|
2567
|
+
* too: its audio is mixed, and a video with no sound is a silent track.
|
|
2540
2568
|
*/
|
|
2541
2569
|
mix(input) {
|
|
2542
2570
|
return this.client.request("POST", "/v1/mix-audio", { body: input });
|
|
@@ -2613,6 +2641,18 @@ var CreditsResource = class {
|
|
|
2613
2641
|
);
|
|
2614
2642
|
return res.data;
|
|
2615
2643
|
}
|
|
2644
|
+
/**
|
|
2645
|
+
* `GET /v1/credits/transactions` → one page of the caller's credit
|
|
2646
|
+
* transactions, newest first, with `nextCursor` for the next page (`null`
|
|
2647
|
+
* at the end). Read `credits_charged` for what each run cost — it can be
|
|
2648
|
+
* below the hold (`credits_reserved`) and is `null` while the hold is open.
|
|
2649
|
+
* Cloud-only route: a self-hosted instance answers 404.
|
|
2650
|
+
*/
|
|
2651
|
+
transactions(options = {}) {
|
|
2652
|
+
return this.client.request("GET", "/v1/credits/transactions", {
|
|
2653
|
+
query: { limit: options.limit, cursor: options.cursor }
|
|
2654
|
+
});
|
|
2655
|
+
}
|
|
2616
2656
|
/**
|
|
2617
2657
|
* `POST /v1/credits/model-costs` → per-identifier credit cost, for editor
|
|
2618
2658
|
* cost previews. Capped at the first {@link MODEL_COSTS_LIMIT} identifiers
|
|
@@ -3955,6 +3995,13 @@ var WorkspacesResource = class {
|
|
|
3955
3995
|
return this.client.requestText("GET", `/v1/workspaces/${encodeURIComponent(id)}/usage`, { query: { ...opts, format: "csv" } });
|
|
3956
3996
|
}
|
|
3957
3997
|
};
|
|
3998
|
+
function tightenBody(input) {
|
|
3999
|
+
const { mediaUrl, ...rest } = input;
|
|
4000
|
+
return { mediaUrls: [mediaUrl], ...Object.fromEntries(Object.entries(rest).filter(([, v]) => v !== void 0)) };
|
|
4001
|
+
}
|
|
4002
|
+
function idempotencyHeaders(options) {
|
|
4003
|
+
return options?.idempotencyKey ? { headers: { "Idempotency-Key": options.idempotencyKey } } : {};
|
|
4004
|
+
}
|
|
3958
4005
|
var EditResource = class {
|
|
3959
4006
|
constructor(client) {
|
|
3960
4007
|
this.client = client;
|
|
@@ -4014,6 +4061,42 @@ var EditResource = class {
|
|
|
4014
4061
|
}
|
|
4015
4062
|
});
|
|
4016
4063
|
}
|
|
4064
|
+
/**
|
|
4065
|
+
* Tighten Episode (`POST /v1/tighten-episode`): tighten a podcast recording
|
|
4066
|
+
* in one call — transcribe, cut the silences and filler, render, with
|
|
4067
|
+
* optional captions, music and framing. Answers the run's job to poll; its
|
|
4068
|
+
* `output_data` holds the episode. The run is priced as its steps at their own
|
|
4069
|
+
* rates plus the listed per-run fee. Quote it first with
|
|
4070
|
+
* {@link estimateTightenEpisode}.
|
|
4071
|
+
*/
|
|
4072
|
+
tightenEpisode(input, options) {
|
|
4073
|
+
return this.client.request("POST", "/v1/tighten-episode", { body: tightenBody(input), ...idempotencyHeaders(options) });
|
|
4074
|
+
}
|
|
4075
|
+
/**
|
|
4076
|
+
* What a Tighten Episode run is estimated at (`POST /v1/tighten-episode/estimate`):
|
|
4077
|
+
* its steps at their own rates plus its per-run fee. Nothing is created or
|
|
4078
|
+
* charged. The estimate leans high: the render is priced at the recording's
|
|
4079
|
+
* full length, while the charge follows the minutes actually rendered.
|
|
4080
|
+
*/
|
|
4081
|
+
estimateTightenEpisode(input) {
|
|
4082
|
+
return this.client.request("POST", "/v1/tighten-episode/estimate", { body: tightenBody(input) });
|
|
4083
|
+
}
|
|
4084
|
+
/**
|
|
4085
|
+
* Continue a Tighten Episode run as a new job (`POST /v1/tighten-episode/continue`):
|
|
4086
|
+
* `"from-failed"` keeps the steps that finished and runs the rest (the fee is
|
|
4087
|
+
* held again; the failed run's was refunded); `"render-final"` renders the
|
|
4088
|
+
* full-quality episode after a review-on preview, with the preview's
|
|
4089
|
+
* settings and no fee. A refusal that names another job
|
|
4090
|
+
* (`already_running`, `continuation_superseded`,
|
|
4091
|
+
* `render_final_already_rendered`) throws a `ContinuationRefusedError`
|
|
4092
|
+
* carrying that `jobId`.
|
|
4093
|
+
*/
|
|
4094
|
+
continueUseCase(input, options) {
|
|
4095
|
+
return this.client.request("POST", "/v1/tighten-episode/continue", {
|
|
4096
|
+
body: { jobId: input.jobId, mode: input.mode, ...input.editedEdl !== void 0 ? { editedEdl: input.editedEdl } : {} },
|
|
4097
|
+
...idempotencyHeaders(options)
|
|
4098
|
+
});
|
|
4099
|
+
}
|
|
4017
4100
|
/**
|
|
4018
4101
|
* Plan a transcript-driven cut (`POST /v1/edit-plan`). Reads a timed
|
|
4019
4102
|
* transcript (plus optional silence ranges) and the media sources, and plans
|
|
@@ -4094,7 +4177,7 @@ var EditResource = class {
|
|
|
4094
4177
|
return remapTranscriptThroughEdl(edl, transcript);
|
|
4095
4178
|
}
|
|
4096
4179
|
};
|
|
4097
|
-
var SDK_VERSION = "2.
|
|
4180
|
+
var SDK_VERSION = "2.27.0" ;
|
|
4098
4181
|
var CLIENT_HEADER = "X-Nodaro-Client";
|
|
4099
4182
|
var isBrowser = () => typeof window !== "undefined" && typeof window.document !== "undefined";
|
|
4100
4183
|
var NodaroClient = class _NodaroClient {
|
|
@@ -4363,6 +4446,6 @@ function supabaseAuth(supabase) {
|
|
|
4363
4446
|
};
|
|
4364
4447
|
}
|
|
4365
4448
|
|
|
4366
|
-
export { AppsResource, AudioResource, CREATURE_ASSET_TYPES, CallbackAuth, CatalogsResource, CharactersResource, CollectionsResource, CommunityResource, CompetitorsResource, CopilotResource, CreaturesResource, CreditsResource, DeveloperAppsResource, EditResource, ExecutionsResource, ForbiddenError, InsufficientCreditsError, JobAbortedError, JobBlockedError, JobFailedError, JobHeldError, JobTimeoutError, JobsResource, LibraryResource, LlmResource, LocationsResource, MediaResource, ModelsResource, NodaroClient, NodaroError, NodesResource, NotFoundError, OAuthResource, ObjectsResource, OrganizationsResource, PickerCatalogsResource, PipelinesResource, PresetsResource, ProjectsResource, PromptHelperResource, RateLimitedError, RecastResource, ReduceResource, SCENE3D_DELIVERY_ASSET_USAGE, SavedPostsResource, Scene3DResource, ShotsResource, StaticTokenAuth, StorageExceededError, StudioOpError, StudioPreviewAppliedError, StudioPreviewUnavailable, StudioProductionsResource, StudioResource, TemplatesResource, TutorialsResource, UnauthorizedError, UploadsResource, VideoProResource, VoicesResource, WorkflowConflictError, WorkflowsResource, WorkspacesResource, buildPersonSeedPrompt, createClient, isStudioGenerateEstimate, supabaseAuth, throwFromResponse };
|
|
4449
|
+
export { AppsResource, AudioResource, CREATURE_ASSET_TYPES, CallbackAuth, CatalogsResource, CharactersResource, CollectionsResource, CommunityResource, CompetitorsResource, ContinuationRefusedError, CopilotResource, CreaturesResource, CreditsResource, DeveloperAppsResource, EditResource, ExecutionsResource, ForbiddenError, InsufficientCreditsError, JobAbortedError, JobBlockedError, JobFailedError, JobHeldError, JobTimeoutError, JobsResource, LibraryResource, LlmResource, LocationsResource, MediaResource, ModelsResource, NodaroClient, NodaroError, NodesResource, NotFoundError, OAuthResource, ObjectsResource, OrganizationsResource, PickerCatalogsResource, PipelinesResource, PresetsResource, ProjectsResource, PromptHelperResource, RateLimitedError, RecastResource, ReduceResource, SCENE3D_DELIVERY_ASSET_USAGE, SavedPostsResource, Scene3DResource, ShotsResource, StaticTokenAuth, StorageExceededError, StudioOpError, StudioPreviewAppliedError, StudioPreviewUnavailable, StudioProductionsResource, StudioResource, TemplatesResource, TutorialsResource, UnauthorizedError, UploadsResource, VideoProResource, VoicesResource, WorkflowConflictError, WorkflowsResource, WorkspacesResource, buildPersonSeedPrompt, createClient, isStudioGenerateEstimate, supabaseAuth, throwFromResponse };
|
|
4367
4450
|
//# sourceMappingURL=index.js.map
|
|
4368
4451
|
//# sourceMappingURL=index.js.map
|