import Tailwind from '../base/tailwind-base';
/**
* Orientation type for button group
*/
export type Orientation = 'horizontal' | 'vertical';
/**
* @tag plus-button-group
* @summary Button group component that groups related buttons together.
*
* @slot - The default slot for the buttons
*
* @cssproperty --button-group-gap - Gap between buttons in the group
*
* @example
* ```html
*
* First
* Second
* Third
*
* ```
*/
export default class PlusButtonGroup extends Tailwind {
/**
* The orientation of the button group.
*/
orientation: Orientation;
/**
* Determines whether the button group's properties override the properties of its child buttons.
* When true, all buttons in the group will have the same appearance.
* When false, each button can have its own properties.
* @default false
*/
override: boolean;
/**
* Determines the visual style of the button
* - filled: Solid background color
* - outlined: Transparent background with border
* - dashed: Transparent background with dashed border
* - text: Text only without background or border
* @default 'filled'
*/
kind: 'filled' | 'outlined' | 'dashed' | 'text';
/**
* Sets the status/color variant of the button
* - default: Neutral color scheme
* - primary: Brand color scheme
* - success: Green color scheme
* - warning: Yellow color scheme
* - danger: Red color scheme
* - info: Blue color scheme
* @default 'default'
*/
status: 'default' | 'primary' | 'success' | 'warning' | 'danger' | 'info';
/**
* Sets the size of the button
* - sm: Small size
* - md: Medium size
* - lg: Large size
* @default 'md'
*/
size: 'sm' | 'md' | 'lg';
/**
* Disables the button interaction
* @default false
*/
disabled: boolean;
/**
* Shows loading spinner and disables interaction
* @default false
*/
loading: boolean;
private _buttons;
static styles: import("lit").CSSResult[];
/**
* Gets all child buttons in the group
*/
private get buttons();
/**
* Apply shared properties to buttons in the group.
* This method either overrides the properties of child buttons or respects their individual properties
* based on the override prop.
*/
private applyPropertiesToButtons;
/**
* Apply styles to buttons based on their position in the group
*/
private applyStylesToButtons;
/**
* Updates the properties and styles of all buttons in the group
*/
private updateButtons;
/**
* Handle slot changes: update button list and styles
*/
private handleSlotChange;
updated(changedProperties: Map): void;
connectedCallback(): void;
render(): import("lit-html").TemplateResult<1>;
}
export { PlusButtonGroup };
//# sourceMappingURL=button-group.d.ts.map