type RemovePrefix<TPrefix extends string, TString extends string> = TString extends `${TPrefix}${infer T}` ? T : never;
export type HTMLEventAttributeName = keyof HTMLElement & `on${string}`;
export type HTMLEventName = RemovePrefix<'on', HTMLEventAttributeName>;
export type RMLEventAttributeName = HTMLEventName & 'onmount';
export type RMLEventName = RemovePrefix<'on', RMLEventAttributeName>;
export type HTMLString = string & {
    _HTMLStringBrand: never;
};
export type HandlerFunction = (event: Event, handledTarget?: EventTarget | null) => Boolean;
interface EventListenerFunction {
    (e: Event): void;
}
interface EventListenerObject {
    handleEvent(e: Event): void;
}
export type EventListener = EventListenerFunction | EventListenerObject | undefined;
export {};
