page-grow
Version:
页面进出场动画管理,零配置,高扩展,是可视化大屏或其他要求炫酷的商业网站必备插件。
116 lines (115 loc) • 2.97 kB
TypeScript
import type { IGrowHTMLElement } from './common';
import { EGrowType } from './rule';
import { GrowTimeLine } from './animate';
export interface PageGrowOption {
target: string | HTMLElement | Array<object>;
growType: EGrowType;
interval: number;
stringType: string;
numberType: string;
bgType: string;
imageType: string;
svgType: string;
canvasType: string;
videoType: string;
chartType: string;
leafNodeType: string;
customTl: Array<CustomTl>;
anovSimpleMode: boolean;
parseLayer: number;
tls: Array<{
id: String;
tl: gsap.core.Animation;
}>;
adjustTlDur?: true;
parts?: [];
labels?: Labels;
reversedCallback: Callback;
completeCallback: Callback;
}
interface initOption {
type: number;
target: string | HTMLElement | Array<object>;
adjustTlDur?: true;
parseLayer?: number;
interval?: number;
config?: any;
labels?: Labels;
tls?: Array<{
id: String;
tl: gsap.core.Animation;
}>;
reversedCallback: Callback;
completeCallback: Callback;
}
interface Labels {
[key: string]: string | number;
}
type Callback = () => void;
/**
* 自定义动画对象
*/
interface CustomTl {
target: any;
tl: GrowTimeLine;
}
export interface EffectObj {
id: string;
animate: string;
props: object;
props2: object;
}
declare const pageGrow: {
gsap: typeof gsap;
option: {};
config: ({
type: number;
name: string;
config: {
growType: EGrowType;
interval: number;
bgType: string;
stringType: string;
numberType: string;
imageType: string;
svgType: string;
canvasType: string;
videoType: string;
chartType: string;
anovSimpleMode: boolean;
parseLayer: number;
leafNodeType: string;
};
des?: undefined;
growType?: undefined;
target?: undefined;
} | {
type: number;
name: string;
des: string;
growType: EGrowType;
target: string;
config: {
interval: number;
bgType: string;
stringType: string;
numberType: string;
imageType: string;
svgType: string;
canvasType: string;
videoType: string;
chartType: string;
anovSimpleMode: boolean;
parseLayer: number;
leafNodeType: string;
growType?: undefined;
};
})[];
tl: gsap.core.Timeline;
els: IGrowHTMLElement[];
init(opt: initOption): GrowTimeLine | undefined;
leave(reversedCallback: Function, timeScale: number): void;
stop(): void;
play(): void;
};
export { pageGrow };