import { CheckType } from '../../../Types/CheckType';
import { CustomElement } from '../../Abstracts/CustomElement';
import type { ICheckmarkElementProps } from './ICheckmarkElementProps';
declare const CheckmarkElement_base: (abstract new (...args: Array<any>) => import("../../../Behaviors/Themeable").IThemeableProps) & (abstract new (...args: Array<any>) => import("../../../Behaviors/Disableable").IDisableableProps) & (abstract new (...args: Array<any>) => import("../../../Behaviors/Variantable").IVariantableProps) & (abstract new (...args: Array<any>) => import("../../../Behaviors/Appearanceable").IAppearanceableProps) & typeof CustomElement & import("../../../Behaviors/Themeable").IThemeableCtor;
/**
 * Checkmark - A visual indicator for selection states in checkboxes, radio buttons, and list items.
 *
 * @description
 * The Checkmark component provides a versatile visual indicator for checked states in interactive
 * controls. It supports two-state (checked/unchecked) and three-state (checked/unchecked/indeterminate)
 * modes, multiple check types (checkmark, cross, dot), and can be styled with different appearances
 * and color variants. The component automatically adapts its visual representation based on the checked
 * state and type properties, making it ideal for custom checkbox and radio button implementations.
 *
 * @name Checkmark
 * @element mosaik-checkmark
 * @category Primitives
 *
 * @csspart checkmark - The main checkmark indicator element
 *
 * @cssprop {String} --checkmark-background-color - Background color of the checkmark box
 * @cssprop {String} --checkmark-border-color - Border color of the checkmark outline
 * @cssprop {String} --checkmark-border-radius - Corner rounding radius
 * @cssprop {String} --checkmark-border-style - Border line style
 * @cssprop {String} --checkmark-border-width - Border thickness
 * @cssprop {String} --checkmark-box-size - Size of the checkmark box
 * @cssprop {String} --checkmark-font-family - Font family for symbol rendering
 * @cssprop {String} --checkmark-font-letter-spacing - Letter spacing for the checkmark symbol
 * @cssprop {String} --checkmark-font-line-height - Line height for the checkmark symbol
 * @cssprop {String} --checkmark-font-size - Font size for the checkmark symbol
 * @cssprop {String} --checkmark-font-text-decoration - Text decoration style
 * @cssprop {String} --checkmark-font-text-transform - Text transformation style
 * @cssprop {String} --checkmark-font-weight - Font weight for the checkmark symbol
 * @cssprop {String} --checkmark-foreground-color - Color of the checkmark symbol
 * @cssprop {String} --checkmark-gap - Internal spacing within the checkmark
 * @cssprop {String} --checkmark-height - Height of the checkmark element
 * @cssprop {String} --checkmark-padding-bottom - Bottom padding inside the checkmark
 * @cssprop {String} --checkmark-padding-left - Left padding inside the checkmark
 * @cssprop {String} --checkmark-padding-right - Right padding inside the checkmark
 * @cssprop {String} --checkmark-padding-top - Top padding inside the checkmark
 * @cssprop {String} --checkmark-shadow - Drop shadow or elevation effect
 * @cssprop {String} --checkmark-shadow-blur - The shadow blur CSS custom property.
 * @cssprop {String} --checkmark-shadow-color - The shadow color CSS custom property.
 * @cssprop {String} --checkmark-shadow-offset-x - The shadow offset x CSS custom property.
 * @cssprop {String} --checkmark-shadow-offset-y - The shadow offset y CSS custom property.
 * @cssprop {String} --checkmark-shadow-spread - The shadow spread CSS custom property.
 * @cssprop {String} --checkmark-thickness - Stroke thickness for the checkmark symbol
 * @cssprop {String} --checkmark-transition-duration - Duration of state transitions
 * @cssprop {String} --checkmark-transition-mode - Timing function for transitions
 * @cssprop {String} --checkmark-transition-property - CSS properties to transition
 * @cssprop {String} --checkmark-translate - Transform translation value
 * @cssprop {String} --checkmark-width - Width of the checkmark element
 *
 * @example
 * Basic checked checkmark:
 * ```html
 * <mosaik-checkmark checked></mosaik-checkmark>
 * ```
 *
 * @example
 * Indeterminate state (three-state - set checked to null via JavaScript):
 * ```html
 * <mosaik-checkmark is-three-state></mosaik-checkmark>
 * ```
 *
 * @example
 * Radio button style with dot:
 * ```html
 * <mosaik-checkmark checked type="dot" variant="primary"></mosaik-checkmark>
 * ```
 *
 * @example
 * Custom styled checkmark:
 * ```html
 * <mosaik-checkmark
 *   checked
 *   appearance="solid"
 *   variant="success"
 *   type="checkmark">
 * </mosaik-checkmark>
 * ```
 *
 * @example
 * Disabled checkmark:
 * ```html
 * <mosaik-checkmark checked disabled></mosaik-checkmark>
 * ```
 *
 * @public
 */
export declare class CheckmarkElement extends CheckmarkElement_base implements ICheckmarkElementProps {
    private _checked;
    private _type;
    private _isThreeState;
    /**
     * @public
     */
    constructor();
    /**
     * Returns the `is` property.
     *
     * @public
     * @static
     * @readonly
    */
    static get is(): string;
    /**
     * Gets or sets the `checked` property.
     *
     * @public
     * @attr
     */
    get checked(): boolean | null;
    set checked(value: boolean | null);
    /**
     * Gets or sets the `type` property.
     *
     * @public
     * @attr
     */
    get type(): CheckType | null;
    set type(value: CheckType | null);
    /**
     * Gets or sets the `isThreeState` property.
     *
     * @public
     * @attr
     */
    get isThreeState(): boolean;
    set isThreeState(value: boolean);
}
/**
 * @public
 */
export declare namespace CheckmarkElement {
    type Props = ICheckmarkElementProps;
}
/**
 * @public
 */
declare global {
    interface HTMLElementTagNameMap {
        'mosaik-checkmark': CheckmarkElement;
    }
}
export {};
//# sourceMappingURL=CheckmarkElement.d.ts.map