UNPKG

@medyll/idae-be

Version:

A modern, lightweight, and extensible DOM manipulation library built with TypeScript. Designed for precise element targeting and manipulation using a callback-based approach. Features include advanced DOM traversal, event handling, style management, attri

26 lines (25 loc) 1.07 kB
import { Be } from './be.js'; type CombineElementsHelper<T extends string, Depth extends number[]> = Depth['length'] extends 10 ? never : T | `${T} ${CombineElementsHelper<T, [...Depth, 1]>}`; export type CombineElements<T extends string> = CombineElementsHelper<T, []>; export type IsWhat = 'element' | 'array' | 'qy'; export type PositionSnapOptions = 'top' | 'right' | 'bottom' | 'left' | 'center' | `${'top' | 'bottom'} ${'left' | 'right' | 'center'}` | `${'left' | 'right'} ${'top' | 'bottom' | 'center'}`; export type HandlerCallbackProps = { be: Be; fragment: unknown; root: Be; requested?: unknown; method?: string; }; export type HandlerCallBackFn = (element: HandlerCallbackProps) => void; export type HandlerCallBack = { callback?: (element: HandlerCallbackProps) => void; }; export type ExpandTyping<T> = T extends infer O ? { [K in keyof O]: O[K]; } : never; export interface CommonHandler<T = unknown, H = unknown, V = unknown> { handle: (actions: H) => Be; methods: string[] | keyof T; valueOf: () => V; } export {};