export type SvelteActionReturnType<P> = {
    update?: (newParams?: P) => void;
    destroy?: () => void;
} | void;
export interface SvelteAction<E = HTMLElement, P = any> {
    <N extends E>(node: N, params?: P): void | SvelteActionReturnType<P>;
}
export type ActionEntry<N = HTMLElement, P = any> = SvelteAction<N, P> | [SvelteAction<N, P>, P];
export type ActionArray = ActionEntry[];
export declare function useActions(node: HTMLElement | SVGElement, actions: ActionArray): {
    update(actions: ActionArray): void;
    destroy(): void;
};
