Class: MediaChain
Defined in: src/batteries/media/builder.ts:55
The chainable builder. Immutable — every verb returns a new instance sharing the executor. Thenable — await runs the chain and resolves to the terminal step's natural type.
Implements
PromiseLike<unknown>
Constructors
Constructor
new MediaChain(exec: ChainExecutor, ops?: MediaOp[]): MediaChain;Defined in: src/batteries/media/builder.ts:59
Parameters
| Parameter | Type | Default value |
|---|---|---|
exec | ChainExecutor | undefined |
ops | MediaOp[] | [] |
Returns
MediaChain
Accessors
audio
Get Signature
get audio(): AudioNamespace;Defined in: src/batteries/media/builder.ts:197
Audio operations.
Returns
image
Get Signature
get image(): ImageNamespace;Defined in: src/batteries/media/builder.ts:192
Image transforms.
Returns
sheet
Get Signature
get sheet(): SheetNamespace;Defined in: src/batteries/media/builder.ts:182
Spreadsheet mutations.
Returns
slides
Get Signature
get slides(): SlidesNamespace;Defined in: src/batteries/media/builder.ts:187
Presentation mutations.
Returns
Methods
applyPatch()
applyPatch(patch: string, options?: {
with?: MediaChainRef[];
}): MediaChain;Defined in: src/batteries/media/builder.ts:133
Apply a unified-diff patch.
Parameters
| Parameter | Type |
|---|---|
patch | string |
options | { with?: MediaChainRef[]; } |
options.with? | MediaChainRef[] |
Returns
MediaChain
chunk()
chunk(options?: {
overlap?: number;
size?: number;
strategy?: "sentence" | "paragraph" | "fixed";
}): MediaChain;Defined in: src/batteries/media/builder.ts:169
Chunk extracted text. Terminal: resolves to a chunk array.
Parameters
| Parameter | Type |
|---|---|
options | { overlap?: number; size?: number; strategy?: "sentence" | "paragraph" | "fixed"; } |
options.overlap? | number |
options.size? | number |
options.strategy? | "sentence" | "paragraph" | "fixed" |
Returns
MediaChain
convert()
convert(to: string): MediaChain;Defined in: src/batteries/media/builder.ts:71
Convert to another format (requires a convert engine).
Parameters
| Parameter | Type |
|---|---|
to | string |
Returns
MediaChain
diff()
diff(other: MediaChainRef): MediaChain;Defined in: src/batteries/media/builder.ts:128
Compare against another media. Terminal: resolves to a structured diff.
Parameters
| Parameter | Type |
|---|---|
other | MediaChainRef |
Returns
MediaChain
extractAssets()
extractAssets(options?: {
types?: ("all" | "image" | "font" | "attachment")[];
}): MediaChain;Defined in: src/batteries/media/builder.ts:160
Extract embedded assets. Terminal: resolves to a media list.
Parameters
| Parameter | Type |
|---|---|
options | { types?: ("all" | "image" | "font" | "attachment")[]; } |
options.types? | ("all" | "image" | "font" | "attachment")[] |
Returns
MediaChain
extractMetadata()
extractMetadata(): MediaChain;Defined in: src/batteries/media/builder.ts:155
Extract metadata. Terminal: resolves to a metadata object.
Returns
MediaChain
extractText()
extractText(options?: {
lang?: string[];
ocr?: "off" | "auto" | "force";
ocrOut?: "json" | "txt" | "hocr";
}): MediaChain;Defined in: src/batteries/media/builder.ts:140
Extract text (routes by format; OCR engine used when needed). Terminal: resolves to text.
Parameters
| Parameter | Type |
|---|---|
options | { lang?: string[]; ocr?: "off" | "auto" | "force"; ocrOut?: "json" | "txt" | "hocr"; } |
options.lang? | string[] |
options.ocr? | "off" | "auto" | "force" |
options.ocrOut? | "json" | "txt" | "hocr" |
Returns
MediaChain
merge()
merge(...others: MediaChainRef[]): MediaChain;Defined in: src/batteries/media/builder.ts:89
Merge other media into this one, in order.
Parameters
| Parameter | Type |
|---|---|
...others | MediaChainRef[] |
Returns
MediaChain
normalize()
normalize(): MediaChain;Defined in: src/batteries/media/builder.ts:118
Normalize structure/encoding.
Returns
MediaChain
redact()
redact(options: {
match: string | RegExp | (string | RegExp)[];
replace?: string;
}): MediaChain;Defined in: src/batteries/media/builder.ts:99
Redact matching text (literals or RegExp).
Parameters
| Parameter | Type |
|---|---|
options | { match: string | RegExp | (string | RegExp)[]; replace?: string; } |
options.match | string | RegExp | (string | RegExp)[] |
options.replace? | string |
Returns
MediaChain
reorder()
reorder(order: number[]): MediaChain;Defined in: src/batteries/media/builder.ts:94
Reorder pages by 1-based index.
Parameters
| Parameter | Type |
|---|---|
order | number[] |
Returns
MediaChain
run()
run(): Promise<StepResult>;Defined in: src/batteries/media/builder.ts:228
Execute and return the raw PlanResult (no unwrapping).
Returns
Promise<StepResult>
sanitize()
sanitize(): MediaChain;Defined in: src/batteries/media/builder.ts:113
Remove potentially unsafe embedded content.
Returns
MediaChain
select()
select(options: {
pages: number[];
}): MediaChain;Defined in: src/batteries/media/builder.ts:76
Keep only the listed 1-based pages.
Parameters
| Parameter | Type |
|---|---|
options | { pages: number[]; } |
options.pages | number[] |
Returns
MediaChain
split()
split(options?: {
by?: "page" | "section";
ranges?: number[][];
}): MediaChain;Defined in: src/batteries/media/builder.ts:81
Split by page (optionally grouped [[start,end], …]). Terminal: resolves to media list.
Parameters
| Parameter | Type |
|---|---|
options | { by?: "page" | "section"; ranges?: number[][]; } |
options.by? | "page" | "section" |
options.ranges? | number[][] |
Returns
MediaChain
then()
then<TResult1, TResult2>(onfulfilled?:
| ((value: unknown) => TResult1 | PromiseLike<TResult1>)
| null, onrejected?:
| ((reason: unknown) => TResult2 | PromiseLike<TResult2>)
| null): PromiseLike<TResult1 | TResult2>;Defined in: src/batteries/media/builder.ts:220
Thenable: awaiting the chain executes it.
Type Parameters
| Type Parameter | Default type |
|---|---|
TResult1 | unknown |
TResult2 | never |
Parameters
| Parameter | Type |
|---|---|
onfulfilled? | | ((value: unknown) => TResult1 | PromiseLike<TResult1>) | null |
onrejected? | | ((reason: unknown) => TResult2 | PromiseLike<TResult2>) | null |
Returns
PromiseLike<TResult1 | TResult2>
Implementation of
PromiseLike.then;toOps()
toOps(): MediaOp[];Defined in: src/batteries/media/builder.ts:204
The accumulated ops (a copy).
Returns
MediaOp[]
toPipe()
toPipe(): string;Defined in: src/batteries/media/builder.ts:209
The canonical pipe form of the accumulated chain.
Returns
string
updateText()
updateText(anchor: string, replace: string): MediaChain;Defined in: src/batteries/media/builder.ts:123
Replace the first occurrence of anchor text.
Parameters
| Parameter | Type |
|---|---|
anchor | string |
replace | string |
Returns
MediaChain
withOp()
withOp(verb: string, args: Record<string, MediaArgValue>): MediaChain;Defined in: src/batteries/media/builder.ts:215
Internal — used by namespaces to append.
Parameters
| Parameter | Type |
|---|---|
verb | string |
args | Record<string, MediaArgValue> |
Returns
MediaChain