UNPKG

@stencil/react-output-target

Version:

React output target for @stencil/core components.

17 lines (15 loc) 1.06 kB
import { EventName, Options } from '@lit/react'; type EventNames = Record<string, EventName | string>; type StencilProps<I extends HTMLElement, E extends EventNames, C, R extends keyof C = never> = Omit<React.HTMLAttributes<I>, keyof E> & Partial<{ [K in keyof E]: E[K] extends EventName<infer T> ? (event: T) => void : (event: any) => void; }> & Required<Pick<C, R>> & Partial<Omit<C, R>> & React.RefAttributes<I>; export type StencilReactComponent<I extends HTMLElement, E extends EventNames = {}, C = Omit<I, keyof HTMLElement>, R extends keyof C = never> = React.FunctionComponent<StencilProps<I, E, C, R>>; /** * Defines a custom element and creates a React component. * @public */ export declare const createComponent: <I extends HTMLElement, E extends EventNames = {}, C = Omit<I, keyof HTMLElement>, R extends keyof C = never>({ defineCustomElement, tagName, transformTag, ...options }: Options<I, E> & { defineCustomElement: () => void; transformTag?: (tagName: string) => string; }) => StencilReactComponent<I, E, C, R>; export {};