import { CSSResultGroup, LitElement, TemplateResult } from "lit";
import "element-internals-polyfill";
import BlCheckbox from "./checkbox/bl-checkbox";
export declare const blCheckboxGroupTag = "bl-checkbox-group";
export declare const blChangeEventName = "bl-checkbox-group-change";
declare const BlCheckboxGroup_base: import("@open-wc/form-control").Constructor<import("@open-wc/form-control").FormControlInterface> & typeof LitElement;
/**
 * @tag bl-checkbox-group
 * @summary Baklava Button component
 *
 * @cssproperty [--bl-checkbox-direction=row] Can be used for showing checkbox options as columns instead of rows. Options are `row` or `column`
 */
export default class BlCheckboxGroup extends BlCheckboxGroup_base {
    static get styles(): CSSResultGroup;
    /**
     * Sets the checkbox group label
     */
    label: string;
    /**
     * Set and gets the actual value of the field
     */
    value: string[];
    /**
     * Sets option as required
     */
    required: boolean;
    get options(): BlCheckbox[];
    get checkedOptions(): string[];
    get availableOptions(): BlCheckbox[];
    connectedCallback(): void;
    disconnectedCallback(): void;
    updated(changedProperties: Map<string, unknown>): void;
    /**
     * Fires when checkbox group value changed
     */
    private onChange;
    private focusedOptionIndex;
    private handleOptionChecked;
    private handleKeyDown;
    private handleFocus;
    render(): TemplateResult;
}
declare global {
    interface HTMLElementTagNameMap {
        [blCheckboxGroupTag]: BlCheckboxGroup;
    }
    interface HTMLElementEventMap {
        [blChangeEventName]: CustomEvent<string[]>;
    }
}
export {};
//# sourceMappingURL=bl-checkbox-group.d.ts.map