From 22f3881b415214019d37bc564536da0c71fc0f77 Mon Sep 17 00:00:00 2001 From: Paul Valerie GOMA Date: Mon, 21 Jul 2025 21:22:19 +0200 Subject: [PATCH] =?UTF-8?q?=F0=9F=8F=B7=EF=B8=8F=20=20Added=20label=20comp?= =?UTF-8?q?onent=20interface?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/components/label/IVLabel.type.ts | 39 ++++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) create mode 100644 src/components/label/IVLabel.type.ts diff --git a/src/components/label/IVLabel.type.ts b/src/components/label/IVLabel.type.ts new file mode 100644 index 0000000..d9e975a --- /dev/null +++ b/src/components/label/IVLabel.type.ts @@ -0,0 +1,39 @@ +/** + * Interface representing the props for the Label component. + */ +export default interface IVLabel { + /** + * The text content displayed as the label. + */ + label: string; + + /** + * The visual style of the label, indicating its semantic meaning. + * - `default`: Standard label appearance. + * - `error`: Indicates an error state. + * - `success`: Indicates a successful or valid state. + * + * @default 'default' + */ + type?: 'default' | 'error' | 'success' | undefined; + + /** + * Whether the label is disabled. When true, the label appears inactive or grayed out. + * + * @default false + */ + disabled?: boolean; + + /** + * Optional hint text displayed alongside or below the label to provide additional context. + */ + hint?: string; + + /** + * Indicates whether the associated field is required. + * + * @default false + */ + required?: boolean; +} +