xdesign-vue-next
Version:
XDesign Component for vue-next
21 lines (20 loc) • 1.2 kB
TypeScript
import type { ComponentPublicInstance, Ref } from 'vue';
export declare const defaultWindow: Window & typeof globalThis;
export interface ConfigurableWindow {
window?: Window;
}
export interface MutationObserverOptions extends MutationObserverInit, ConfigurableWindow {
}
export declare type MaybeRef<T> = T | Ref<T>;
export declare type VueInstance = ComponentPublicInstance;
export declare type MaybeElementRef<T extends MaybeElement = MaybeElement> = MaybeRef<T>;
export declare type MaybeElement = HTMLElement | SVGElement | VueInstance | undefined | null;
export declare type UnRefElementReturn<T extends MaybeElement = MaybeElement> = T extends VueInstance ? Exclude<MaybeElement, VueInstance> : T | undefined;
export declare type Fn = () => void;
export declare function unrefElement<T extends MaybeElement>(elRef: MaybeElementRef<T>): UnRefElementReturn<T>;
export declare function tryOnScopeDispose(fn: Fn): boolean;
export declare function useMutationObserver(target: MaybeElementRef, callback: MutationCallback, options?: MutationObserverOptions): {
isSupported: boolean;
stop: () => void;
};
export declare type UseMutationObserverReturn = ReturnType<typeof useMutationObserver>;