import { NeonFunctionalColor } from '@/model/common/color/NeonFunctionalColor';
import { NeonHorizontalPosition } from '@/model/common/position/NeonHorizontalPosition';
import { NeonSize } from '@/model/common/size/NeonSize';
import { NeonVerticalPosition } from '@/model/common/position/NeonVerticalPosition';
/**
 * <p>Expansion panels are used to show and hide content that may be less important or too large to display on screen
 * all the time. They can also be used to expand lists of items, e.g. <em>Show more</em>. The expansion panel consists
 * of a button which, when clicked, toggles the open/closed state of the expansion panel and a slot for the content to
 * display on expansion.</p>
 */
declare const _default: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
    /**
     * A boolean indicating whether the expansion panel is expanded.
     */
    modelValue: {
        type: BooleanConstructor;
        required: true;
    };
    /**
     * The label of the expansion button
     */
    label: {
        type: StringConstructor;
    };
    /**
     * Provide an id to support aria-controls. The id will be placed on the expansion panel content wrapper and the
     * aria-controls on the header (triggering the expansion).
     */
    id: {
        type: StringConstructor;
        default: null;
    };
    /**
     * An icon to display to the left of the label
     */
    icon: {
        type: StringConstructor;
        default: null;
    };
    /**
     * The position of the expansion button. This can be located above the content to expand or below it.
     */
    position: {
        type: () => NeonVerticalPosition;
        default: NeonVerticalPosition;
    };
    /**
     * The position of the expansion button. This can be located above the content to expand or below it.
     */
    indicatorPosition: {
        type: () => NeonHorizontalPosition;
        default: NeonHorizontalPosition;
    };
    /**
     * The size of the expansion panel button.
     */
    size: {
        type: () => NeonSize;
        default: NeonSize;
    };
    /**
     * The color of the expansion panel button.
     */
    color: {
        type: () => NeonFunctionalColor;
        default: NeonFunctionalColor;
    };
    /**
     * Whether the label and expansion indicator should be flush with the width of the container.
     */
    fullWidth: {
        type: BooleanConstructor;
        default: boolean;
    };
    /**
     * The disabled state of the expansion panel
     */
    disabled: {
        type: BooleanConstructor;
        default: boolean;
    };
    /**
     * Indent the expansion panel content
     */
    indent: {
        type: BooleanConstructor;
        default: boolean;
    };
}>, {
    toggleExpanded: () => void;
    slots: Readonly<{
        [name: string]: import("vue").Slot<any> | undefined;
    }>;
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, "update:modelValue"[], "update:modelValue", import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
    /**
     * A boolean indicating whether the expansion panel is expanded.
     */
    modelValue: {
        type: BooleanConstructor;
        required: true;
    };
    /**
     * The label of the expansion button
     */
    label: {
        type: StringConstructor;
    };
    /**
     * Provide an id to support aria-controls. The id will be placed on the expansion panel content wrapper and the
     * aria-controls on the header (triggering the expansion).
     */
    id: {
        type: StringConstructor;
        default: null;
    };
    /**
     * An icon to display to the left of the label
     */
    icon: {
        type: StringConstructor;
        default: null;
    };
    /**
     * The position of the expansion button. This can be located above the content to expand or below it.
     */
    position: {
        type: () => NeonVerticalPosition;
        default: NeonVerticalPosition;
    };
    /**
     * The position of the expansion button. This can be located above the content to expand or below it.
     */
    indicatorPosition: {
        type: () => NeonHorizontalPosition;
        default: NeonHorizontalPosition;
    };
    /**
     * The size of the expansion panel button.
     */
    size: {
        type: () => NeonSize;
        default: NeonSize;
    };
    /**
     * The color of the expansion panel button.
     */
    color: {
        type: () => NeonFunctionalColor;
        default: NeonFunctionalColor;
    };
    /**
     * Whether the label and expansion indicator should be flush with the width of the container.
     */
    fullWidth: {
        type: BooleanConstructor;
        default: boolean;
    };
    /**
     * The disabled state of the expansion panel
     */
    disabled: {
        type: BooleanConstructor;
        default: boolean;
    };
    /**
     * Indent the expansion panel content
     */
    indent: {
        type: BooleanConstructor;
        default: boolean;
    };
}>> & Readonly<{
    "onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
}>, {
    color: NeonFunctionalColor;
    icon: string;
    id: string;
    disabled: boolean;
    size: NeonSize;
    fullWidth: boolean;
    position: NeonVerticalPosition;
    indicatorPosition: NeonHorizontalPosition;
    indent: boolean;
}, {}, {
    NeonExpansionIndicator: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
        expanded: {
            type: BooleanConstructor;
            default: boolean;
        };
        inverse: {
            type: BooleanConstructor;
            default: boolean;
        };
        disabled: {
            type: BooleanConstructor;
            default: boolean;
        };
        color: {
            type: () => NeonFunctionalColor;
            default: null;
        };
    }>, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
        expanded: {
            type: BooleanConstructor;
            default: boolean;
        };
        inverse: {
            type: BooleanConstructor;
            default: boolean;
        };
        disabled: {
            type: BooleanConstructor;
            default: boolean;
        };
        color: {
            type: () => NeonFunctionalColor;
            default: null;
        };
    }>> & Readonly<{}>, {
        color: NeonFunctionalColor;
        inverse: boolean;
        disabled: boolean;
        expanded: boolean;
    }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
    NeonIcon: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
        name: {
            type: StringConstructor;
            required: true;
        };
        id: {
            type: StringConstructor;
            default: null;
        };
        color: {
            type: () => NeonFunctionalColor;
            default: null;
        };
        inverse: {
            type: BooleanConstructor;
            default: boolean;
        };
        disabled: {
            type: BooleanConstructor;
            default: boolean;
        };
    }>, {
        sanitizedAttributes: import("vue").ComputedRef<{
            [x: string]: unknown;
        }>;
        icon: import("vue").ComputedRef<string | undefined>;
    }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
        name: {
            type: StringConstructor;
            required: true;
        };
        id: {
            type: StringConstructor;
            default: null;
        };
        color: {
            type: () => NeonFunctionalColor;
            default: null;
        };
        inverse: {
            type: BooleanConstructor;
            default: boolean;
        };
        disabled: {
            type: BooleanConstructor;
            default: boolean;
        };
    }>> & Readonly<{}>, {
        color: NeonFunctionalColor;
        id: string;
        inverse: boolean;
        disabled: boolean;
    }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
export default _default;
