@omnimedia/omnitool
Version:
open source video processing tools
76 lines (75 loc) • 2.77 kB
TypeScript
import { TextStyleOptions } from "pixi.js";
import { Media } from "../parts/media.js";
import { Id, TimelineFile } from "../parts/basics.js";
import { FilterActions } from "../parts/filters.js";
import { Crop, Item, ItemBase } from "../parts/item.js";
import { TransitionActions } from "../parts/transitions.js";
import { PresetAnimateActions } from "../parts/animations/types.js";
import { CaptionActions } from "../parts/captions.js";
import { Anim, AnimateAction, Interpolation, Keyframes, TrackTransform, Transform, TransformOptions, Vec2 } from "../types.js";
type ContainerInput = [label: string, ...items: Item.Any[]] | Item.Any[];
export declare class O {
#private;
state: {
timeline: TimelineFile;
};
constructor(state: {
timeline: TimelineFile;
});
require<T extends Item.Any>(id: Id | undefined): T | undefined;
get timeline(): TimelineFile;
getId(): number;
register(item: Item.Any): void;
textStyle: (style: TextStyleOptions) => Item.TextStyle;
spatial: (transform?: Transform, crop?: Crop) => Item.Spatial;
anim: {
scalar: (terp: Interpolation, track: Keyframes) => Anim<Keyframes>;
vec2: (terp: Interpolation, source: Keyframes<Vec2>) => {
terp: Interpolation;
track: {
x: Keyframes;
y: Keyframes;
};
};
transform: (terp: Interpolation, source: Keyframes<Transform>) => Anim<TrackTransform>;
};
filter: FilterActions;
animate: {
presets: PresetAnimateActions;
opacity: AnimateAction<"opacity">;
transform: AnimateAction<"transform">;
};
sequence: (...input: ContainerInput) => Item.Sequence;
stack: (...input: ContainerInput) => Item.Stack;
video: (media: Media, options?: {
start?: number;
duration?: number;
label?: string;
enabled?: boolean;
}) => Item.Video;
image: (media: Media, options?: {
duration?: number;
label?: string;
enabled?: boolean;
}) => Item.Image;
audio: (media: Media, options?: {
start?: number;
duration?: number;
gain?: number;
label?: string;
enabled?: boolean;
}) => Item.Audio;
text: (content: string, options?: {
duration?: number;
styles?: TextStyleOptions;
label?: string;
enabled?: boolean;
}) => Item.Text;
captions: CaptionActions;
gap: (duration: number, options?: ItemBase) => Item.Gap;
transition: TransitionActions;
transform: (options?: TransformOptions) => Transform;
addChildren(parent: Item.Stack | Item.Sequence, ...items: Item.Any[]): void;
set: <K extends Item.Any>(id: Id, partial: Partial<K>) => void;
}
export {};