diff --git a/src/components/togglebutton/ToggleButton.d.ts b/src/components/togglebutton/ToggleButton.d.ts index 595ecfddf..ca6f6a879 100755 --- a/src/components/togglebutton/ToggleButton.d.ts +++ b/src/components/togglebutton/ToggleButton.d.ts @@ -1,16 +1,69 @@ -interface ToggleButtonProps { - modelValue?: boolean; - onIcon?: string; - offIcon?: string; - onLabel?: string; - offLabel?: string; - iconPos?: string; +import { ClassComponent, GlobalComponentConstructor } from '../ts-helpers'; + +type ToggleButtonType = 'left' | 'right'; + +export interface ToggleButtonProps { + /** + * Value of the component. + */ + modelValue?: boolean | undefined; + /** + * Icon for the on state. + */ + onIcon?: string | undefined; + /** + * Icon for the off state. + */ + offIcon?: string | undefined; + /** + * Label for the on state. + * Default value is 'yes'. + */ + onLabel?: string | undefined; + /** + * Label for the off state. + * Default value is 'no'. + */ + offLabel?: string | undefined; + /** + * Position of the icon. + * @see ToggleButtonType + * Default value is 'left'. + */ + iconPos?: ToggleButtonType; } -declare class ToggleButton { - $props: ToggleButtonProps; - $emit(eventName: 'update:modelValue', value: boolean): this; - $emit(eventName: 'change', event: Event): this; +export interface ToggleButtonSlots { } +export declare type ToggleButtonEmits = { + /** + * Emitted when the value changes. + * @param {boolean} value - New value. + */ + 'update:modelValue': (value: boolean) => void; + /** + * Callback to invoke on value change. + * @param {Event} event - Browser event. + */ + 'change': (event: Event) => void; +} + +declare class ToggleButton extends ClassComponent { } + +declare module '@vue/runtime-core' { + interface GlobalComponents { + ToggleButton: GlobalComponentConstructor + } +} + +/** + * + * ToggleButton is used to select a boolean value using a button. + * + * Demos: + * + * - [ToggleButton](https://www.primefaces.org/primevue/showcase/#/togglebutton) + * + */ export default ToggleButton;