import { BaseButton } from "@fluentui/web-components"; import type { CompoundButtonShape, CompoundButtonSize, CompoundButtonAppearance } from "./compound-button.options.js"; /** * CompoundButton * @summary The base class used for constructing a fabric-compound-button custom element, which extends the Fluent UI CompoundButton with Fabric-specific functionality. * * @example * ```html * * 🚀 * Your Text Here * → * Detailed description here * * ``` * * @attr {CompoundButtonAppearance | undefined} appearance - Indicates the styled appearance of the button. * @attr {CompoundButtonShape | undefined} shape - The shape of the button. * @attr {CompoundButtonSize | undefined} size - The size of the button. * @attr {boolean | undefined} icon-only - Indicates that the button should only display as an icon with no text content. * @attr {boolean | undefined} autofocus - Indicates the button should be focused when the page is loaded. * @attr {boolean | undefined} disabled-focusable - Indicates that the button is focusable while disabled. * @attr {number | undefined} tabindex - Sets that the button tabindex attribute. * @attr {string | undefined} formaction - The URL that processes the form submission. * @attr {string | undefined} form - The id of a form to associate the element to. * @attr {string | undefined} formenctype - The encoding type for the form submission. * @attr {string | undefined} formmethod - The HTTP method that the browser uses to submit the form. * @attr {boolean | undefined} formnovalidate - Indicates that the form will not be validated when submitted. * @attr {CompoundButtonFormTarget | undefined} formtarget - The target frame or window to open the form submission in. * @attr {string | undefined} name - The name of the element. This element's value will be surfaced during form submission under the provided name. * @attr {string | undefined} type - The button type. * @attr {string | undefined} value - The value attribute. * * @prop {CompoundButtonAppearance | undefined} appearance - Indicates the styled appearance of the button. * @prop {CompoundButtonShape | undefined} shape - The shape of the button. * @prop {CompoundButtonSize | undefined} size - The size of the button. * @prop {boolean | undefined} iconOnly - Indicates that the button should only display as an icon with no text content. * @prop {boolean | undefined} autofocus - Indicates the button should be focused when the page is loaded. * @prop {boolean | undefined} disabledFocusable - Indicates that the button is focusable while disabled. * @prop {number | undefined} tabIndex - Sets that the button tabindex attribute. * @prop {string | undefined} formAction - The URL that processes the form submission. * @prop {string | undefined} form - The id of a form to associate the element to. * @prop {string | undefined} formEnctype - The encoding type for the form submission. * @prop {string | undefined} formMethod - The HTTP method that the browser uses to submit the form. * @prop {boolean | undefined} formNoValidate - Indicates that the form will not be validated when submitted. * @prop {CompoundButtonFormTarget | undefined} formTarget - The target frame or window to open the form submission in. * @prop {string | undefined} name - The name of the element. This element's value will be surfaced during form submission under the provided name. * @prop {string | undefined} type - The button type. * @prop {string | undefined} value - The value attribute. * * @slot start - Content which can be provided before the button content. * @slot end - Content which can be provided after the button content. * @slot - The default slot for button content. * @slot description - A slot for providing additional description. * * @csspart content - The button content container. * * @method press - Presses the button. * @method resetForm - Resets the associated form. * * @extends FluentCompoundButton * @tagname fabric-compound-button * @public */ export declare class CompoundButton extends BaseButton { /** * The appearance of the compound button. * * @public * @remarks * HTML Attribute: `appearance` */ appearance: CompoundButtonAppearance; /** * The shape of the compound button. * * @public * @remarks * HTML Attribute: `shape` */ shape?: CompoundButtonShape; /** * The size of the compound button. * * @public * @remarks * HTML Attribute: `size` */ size?: CompoundButtonSize; /** * Indicates that the compound button should only display as an icon with no text content. * * @public * @remarks * HTML Attribute: `icon-only` */ iconOnly: boolean; } //# sourceMappingURL=compound-button.d.ts.map