/**
 * @license
 * Copyright Tyler Technologies, Inc. 
 * License: Apache-2.0
 */
import type { IBaseComponent } from './core/base/base-component';
export declare const COMPONENT_NAME_PREFIX = "forge-";
export declare const KEYSTROKE_DEBOUNCE_THRESHOLD = 500;
export declare const ICON_CLASS_NAME = "tyler-icons";
export declare const CDN_BASE_URL = "https://cdn.forge.tylertech.com/";
export declare const canUserHoverElements: boolean;
/** A method symbol that gets the submitted value of a form-associated component. */
export declare const getFormValue: unique symbol;
/** A method symbol that gets the form state of a form-associated component. */
export declare const getFormState: unique symbol;
/** A method symbol that sets the validity of a form-associated component. */
export declare const setValidity: unique symbol;
/** A method symbol that gets the validation message of a form-associated component. */
export declare const getValidationMessage: unique symbol;
/** A property symbol that references the `ElementInternals` instance of an element. */
export declare const internals: unique symbol;
/**
 * A property symbol that sets the type of an internal input element used to create
 * validation messages
 */
export declare const inputType: unique symbol;
/** A property symbol that indicates whether or not a `Focusable` element can be focused. */
export declare const isFocusable: unique symbol;
/**
 * A method symbol that sets default ARIA on the `ElementInternals` instance of an element if
 * supported or sprouts attributes if not.
 */
export declare const setDefaultAria: unique symbol;
export type Theme = 'primary' | 'secondary' | 'tertiary' | 'success' | 'warning' | 'error' | 'info';
export type Density = 'small' | 'medium' | 'large';
export type AbstractConstructor<T> = abstract new (...args: any[]) => T;
export type MixinBase<TBase = IBaseComponent> = AbstractConstructor<TBase>;
/**
 * The `focusVisible` property is an experimental feature that is not yet supported by all browsers.
 *
 * We will use this to allow for setting focus to elements programmatically and showing the focus indicator.
 */
export type ExperimentalFocusOptions = FocusOptions & {
    focusVisible?: boolean;
};
