import { LitElement } from '../../../../../node_modules/lit'; import { LinkPart, LinkService, SbLinkProps as Props } from './link.types'; /** * Link button with an optional inline prompt, for navigational and * action-driven UI flows. * * @part link - div: root, contains both subparts * @part link-button - rtg-button: main clickable element * @part link-prompt - p: optional inline text, preceding the button part * * @event sb-link:click - Fired when the link button is clicked, before any auth call. * Detail: `{ id: string; buttonId: string; service: "auth" | "other"; event?: string }` * @event sb-link:success - Fired after the auth call resolves successfully (only when `service="auth"`). * Detail: `{ id: string; buttonId: string; event: string; result: ProcessEventResponse }` * @event sb-link:error - Fired when the auth call fails (only when `service="auth"`). * Detail: `{ id: string; buttonId: string; event: string; message: string }` */ export declare class SbLink extends LitElement implements Props { static readonly ROOT = "link"; static readonly BUTTON = "button"; static readonly PROMPT = "prompt"; static readonly TAG: string; static readonly CLICK_EVENT: string; static readonly SUCCESS_EVENT: string; static readonly ERROR_EVENT: string; static readonly PARTS: Record; /** * Substring used in generated part IDs. */ seed: string; /** * Custom ID used as the root part ID and as the base of subpart IDs. */ customId?: string; /** * Text used as the label of the link button part. */ private _label; get label(): string; set label(value: string); /** * Helper text rendered before and inline with the button. */ prompt?: string; /** * Service which handles the `event` (if provided) on click. */ service: LinkService; /** * Event identifier forwarded to the specified `service` on click. * Certain services may not handle events. */ event?: string; /** * Disables the link button, preventing interaction. */ disabled?: boolean; /** * Manual alternative to the private `_loading` state. */ loading?: boolean; /** * Indicates whether the component is dispatching or emitting an event. */ private _loading; protected createRenderRoot(): this; get rootId(): string; get buttonId(): string; get promptId(): string; get isLoading(): boolean; get isDisabled(): boolean; connectedCallback(): void; disconnectedCallback(): void; private _handleClick; render(): import('../../../../../node_modules/lit-html').TemplateResult<1>; }