@diffusionstudio/core-v4
Version:
2D motion graphics and video rendering engine
84 lines (83 loc) • 3.14 kB
TypeScript
import { HtmlSource } from '../../sources';
import { Clip } from '../clip';
import { Layer } from '../../layer';
import { HtmlClipAnimationOptions, HtmlClipProps } from './interfaces';
import { Renderer } from '../../renderer';
import { MediaInput } from '../../types';
declare const HtmlClip_base: {
new (...args: any[]): {
source?: {
height: number;
width: number;
aspectRatio: number;
} | undefined;
_position: {
x: number;
y: number;
};
_layoutCache: import('../..').Size;
_height?: number;
_width?: number;
_aspectRatio?: number;
_keepAspectRatio: boolean;
_mask?: import('../..').Mask;
constraints: import('..').Constraints;
anchorX: number;
anchorY: number;
scaleX: number;
scaleY: number;
translateX: number;
translateY: number;
rotation: number;
opacity: number;
filter?: string;
blendMode?: import('../..').BlendMode;
get x(): number;
set x(value: number | import('../..').Percent);
get y(): number;
set y(value: number | import('../..').Percent);
get translate(): import('../..').Point;
set translate(value: import('../..').Point | number);
get anchor(): import('../..').Point;
set anchor(value: import('../..').Point | number);
get scale(): import('../..').Point;
set scale(value: import('../..').Point | number);
mask: import('../..').Mask | undefined;
keepAspectRatio: boolean;
get aspectRatio(): number;
set aspectRatio(value: number | undefined);
get height(): number;
set height(value: import('../..').Percent | number | undefined);
get width(): number;
set width(value: import('../..').Percent | number | undefined);
get position(): import('../..').Point;
set position(value: import('../..').RelativePoint | "center");
animate(time: import('../..').Timestamp): /*elided*/ any;
layout(next: import('../..').Size): void;
readonly size: import('../..').Size;
readonly bounds: [import('../..').Point, import('../..').Point, import('../..').Point, import('../..').Point];
animations: import('..').ClipAnimationOptions;
start: import('../..').Timestamp;
stop: import('../..').Timestamp;
toJSON(exclude?: string[]): unknown;
fromJSON<K = {}>(obj: K extends string ? never : K): /*elided*/ any;
};
readonly VISUAL_MIXIN: symbol;
} & typeof Clip;
export declare class HtmlClip extends HtmlClip_base {
_keepAspectRatio: boolean;
readonly type = "HTML";
layer?: Layer<HtmlClip>;
source: HtmlSource;
animations: HtmlClipAnimationOptions;
/**
* Access to the html document that
* will be rendered to the canvas
*/
readonly element: HTMLImageElement;
constructor(input?: MediaInput | HtmlSource, props?: HtmlClipProps);
init(): Promise<void>;
render(renderer: Renderer): void;
refresh(): this;
}
export {};