@ebay/ebayui-core
Version:
Collection of core eBay components; considered to be the building blocks for all composite structures, pages & apps.
29 lines (28 loc) • 855 B
TypeScript
import type { WithNormalizedProps } from "../../global";
export interface ToggleButtonEvent {
originalEvent: MouseEvent;
pressed: boolean;
}
interface ToggleButtonInput extends Omit<Marko.HTML.Span, `on${string}`> {
pressed?: boolean;
"layout-type"?: string;
icon?: Marko.AttrTag<Marko.Renderable>;
img?: Marko.AttrTag<{
src: string;
alt: string;
fillPlacement?: string;
}>;
subtitle?: string | Marko.AttrTag<Marko.Renderable>;
renderBody?: Marko.Body;
"on-toggle"?: (event: ToggleButtonEvent) => void;
}
export interface Input extends WithNormalizedProps<ToggleButtonInput> {
}
interface State {
pressed: boolean;
}
declare class ToggleButton extends Marko.Component<Input, State> {
onInput(input: Input): void;
handleClick(ev: MouseEvent): void;
}
export default ToggleButton;