# All files / checkbox checkbox.props.ts

100% Statements 3/3
100% Branches 2/2
100% Functions 1/1
100% Lines 3/3

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48

    1x
    1x
    1x

     import * as React from "react";
    import { ICheckboxClassNameContract, IManagedClasses } from "@microsoft/fast-components-class-name-contracts-base";

    /**
     * Button HTML tags
     */
    export enum CheckboxHTMLTags {
        div = "div",
        label = "label"
    }

    export interface ICheckboxHandledProps {
        /**
         * The HTML tag (defaults to CheckboxHTMLTags.checkbox)
         */
        tag?: string;

        /**
         * The checked state
         */
        checked?: boolean;

        /**
         * The disabled state
         */
        disabled?: boolean;

        /**
         * The indeterminate option
         */
        indeterminate?: boolean;

        /**
         * The onChange event handler
         */
        onChange?: CheckboxOnChange;

        /**
         * The textual content
         */
        text?: string;
    }

    export interface ICheckboxUnhandledProps extends React.AllHTMLAttributes<HTMLElement> {}
    export type CheckboxOnChange = (event?: React.ChangeEvent<HTMLElement>) => void;
    export interface ICheckboxManagedClasses extends IManagedClasses<ICheckboxClassNameContract> {}
    export type CheckboxProps = ICheckboxHandledProps & ICheckboxUnhandledProps & ICheckboxManagedClasses;