pyro
Version:
Pyro custom elements
46 lines (45 loc) • 1.19 kB
TypeScript
import { DefineComponent } from 'vue';
import { HTMLAttributes } from 'svelte/elements';
export interface TabProps {
/** Exposed by pyro-tab-group as value in click event handler */
value?: string | number;
/** Label of tab */
label?: string;
/** Selected */
selected?: boolean;
/** The id of the panel the this tab shows */
'aria-controls'?: string;
/** Tab clicked */
onClick?: (e: Event) => void;
/** Slot for label */
children?: any;
}
declare module 'vue' {
interface GlobalComponents {
'pyro-tab': DefineComponent<TabProps>;
}
}
interface PyroTabPreact extends Omit<JSX.HTMLAttributes, keyof TabProps>, TabProps {
}
declare module 'preact/jsx-runtime' {
namespace JSX {
interface IntrinsicElements {
'pyro-tab': PyroTabPreact;
}
}
}
interface PyroTabSvelte extends Omit<HTMLAttributes<any>, keyof TabProps>, TabProps {
}
declare module 'svelte/elements' {
interface SvelteHTMLElements {
'pyro-tab': PyroTabSvelte;
}
}
declare module 'solid-js' {
namespace JSX {
interface IntrinsicElements {
'pyro-tab': PyroTabPreact;
}
}
}
export {};