/**
 * aria.ts
 *
 * Type definitions for ARIA attributes and roles.
 * These follow the WAI-ARIA specification and are used across all Punkt components.
 */
export type TAriaBoolean = boolean | 'true' | 'false';
export type TAriaBooleanMixed = TAriaBoolean | 'mixed';
export type TAriaCurrent = TAriaBoolean | 'page' | 'step' | 'location' | 'date' | 'time';
export type TAriaHasPopup = TAriaBoolean | 'menu' | 'listbox' | 'tree' | 'grid' | 'dialog';
export type TAriaInvalid = TAriaBoolean | 'grammar' | 'spelling';
export type TAriaLive = 'off' | 'polite' | 'assertive';
export type TAriaRelevant = 'additions' | 'removals' | 'text' | 'all';
export type TAriaSort = 'none' | 'ascending' | 'descending' | 'other';
export type TAriaAutoComplete = 'none' | 'inline' | 'list' | 'both';
export type TAriaOrientation = 'horizontal' | 'vertical';
export interface IAriaAttributes {
    'aria-activedescendant'?: string;
    'aria-controls'?: string;
    'aria-describedby'?: string;
    'aria-details'?: string;
    'aria-errormessage'?: string;
    'aria-flowto'?: string;
    'aria-label'?: string;
    'aria-labelledby'?: string;
    'aria-owns'?: string;
    'aria-roledescription'?: string;
    'aria-autocomplete'?: TAriaAutoComplete;
    'aria-checked'?: TAriaBooleanMixed;
    'aria-current'?: TAriaCurrent;
    'aria-disabled'?: TAriaBoolean;
    'aria-expanded'?: TAriaBoolean;
    'aria-haspopup'?: TAriaHasPopup;
    'aria-hidden'?: TAriaBoolean;
    'aria-invalid'?: TAriaInvalid;
    'aria-keyshortcuts'?: string;
    'aria-level'?: number;
    'aria-modal'?: TAriaBoolean;
    'aria-multiline'?: TAriaBoolean;
    'aria-multiselectable'?: TAriaBoolean;
    'aria-orientation'?: TAriaOrientation;
    'aria-placeholder'?: string;
    'aria-pressed'?: TAriaBooleanMixed;
    'aria-readonly'?: TAriaBoolean;
    'aria-required'?: TAriaBoolean;
    'aria-selected'?: TAriaBoolean;
    'aria-sort'?: TAriaSort;
    'aria-atomic'?: TAriaBoolean;
    'aria-busy'?: TAriaBoolean;
    'aria-live'?: TAriaLive;
    'aria-relevant'?: TAriaRelevant | string;
    'aria-colcount'?: number;
    'aria-colindex'?: number;
    'aria-colspan'?: number;
    'aria-rowcount'?: number;
    'aria-rowindex'?: number;
    'aria-rowspan'?: number;
    'aria-posinset'?: number;
    'aria-setsize'?: number;
    'aria-valuemax'?: number;
    'aria-valuemin'?: number;
    'aria-valuenow'?: number;
    'aria-valuetext'?: string;
}
export type TAlertRole = 'alert' | 'status';
