import type { HTMLAttributes } from 'svelte/elements';
export type CheckboxVariant = 'checkbox' | 'radio';
export interface CheckboxProps extends Omit, 'onclick' | 'onchange'> {
/**
* If true, the component is checked.
*/
checked?: boolean;
/**
* The default checked state. Use when the component is not controlled.
*/
defaultChecked?: boolean;
/**
* If true, the component is disabled.
*/
disabled?: boolean;
/**
* The checkbox type variant
*/
variant?: CheckboxVariant;
/**
* Callback fired when the state is changed.
* @param checked - The new checked state
*/
onChange?: (checked: boolean) => void;
/**
* Additional CSS classes
*/
class?: string;
}
export interface CheckboxChangeEvent {
checked: boolean;
}