vue-app-sdk
Version:
92 lines (91 loc) • 2.17 kB
TypeScript
import { MaybeRefOrGetter } from 'vue';
import { AppSDKInternalInstance, Plugin, PluginID } from '../..';
export interface AnimationOptions {
/**
* 路由前进动画名称
* @default 'forward'
*/
forwardName?: MaybeRefOrGetter<string>;
/**
* 路由后退动画名称
* @default 'backward'
*/
backwardName?: MaybeRefOrGetter<string>;
}
/**
* Animation Plugin ID
*/
declare const ANIMATION_ID: PluginID<Animation>;
export { ANIMATION_ID };
/**
* 路由动画插件
*/
export declare class Animation implements Plugin {
/**
* 配置项
*/
options: AnimationOptions;
constructor(
/**
* 配置项
*/
options?: AnimationOptions);
id: PluginID<Animation>;
/**
* 是否在路由导航后自动延迟启用动画
*/
private _isAutoEnabled;
/**
* 是否在路由导航后自动延迟启用动画
* @readonly
*/
get isAutoEnabled(): boolean;
/**
* 动画启用状态
*/
private _isEnabled;
/**
* 动画启用状态
* @readonly
*/
get isEnabled(): boolean;
/**
* 路由导航时的动画名称,禁用动画时将返回 `undefined`
*/
get name(): string | undefined;
/**
* 当前使用的动画名称
*/
private _animationName;
/**
* 前进动画名称
* @readonly
*/
get forwardName(): string;
/**
* 后退动画名称
* @readonly
*/
get backwardName(): string;
/**
* 设置是否在路由导航后自动延迟启用动画状态
* @param value 状态值
*/
setAutoEnabled: (value: boolean) => void;
/**
* 设置动画启用状态
* @param value 状态值
*/
setEnabled: (value: boolean) => void;
/**
* 启用动画
*/
enable: () => void;
/**
* 禁用动画
*
* ***注意:禁用时需设置 {@link https://cn.vuejs.org/api/built-in-components.html#transition Transition} 组件的 `css` 属性为 `false`,否则会影响切换效果!***
*/
disable: () => void;
install: (sdk: AppSDKInternalInstance) => () => void;
}