export type PureAction = (node: HTMLElement) => void
export interface ActionResult {
update: (parameters: Parameters) => void
destroy: () => void
}
export type Action = (
node: HTMLElement,
parameters: Parameters,
) => ActionResult
export interface UnknownActionResult {
update?: (parameters?: Parameters) => void
destroy?: () => void
}
export type UnknownAction = (
node: HTMLElement,
parameters?: Parameters,
) => void | undefined | null | UnknownActionResult