UNPKG

@sandlada/mdc

Version:

@sandlada/mdc is an open source component library that follows the Material Design 3 design specifications.

56 lines 2.33 kB
/** * @license * Copyright 2026 Kai-Orion & Sandlada * SPDX-License-Identifier: MIT */ import { LitElement, type PropertyValues, type TemplateResult } from 'lit'; import { AppBarAlignment, AppBarVariant, type IAppBar } from '../appbar.interface'; declare const BaseAppBar_base: Omit<typeof LitElement, "prototype"> & (new () => LitElement & import("../../../utils/behaviors/element-internals").WithElementInternals & import("../../elevation/elevation-options.mixin").IMixinElevationOptions); /** * Base app bar class providing structure, slots, and scroll tracking. * * Implements Material Design 3 and MD3 Expressive app bar specifications: * - Small * - Center-aligned * - Medium flexible * - Large flexible * - Search app bar */ export declare abstract class BaseAppBar extends BaseAppBar_base implements IAppBar { variant: AppBarVariant; alignment: AppBarAlignment; headline: string; subtitle: string; scrolled: boolean; scrollTarget: HTMLElement | Window | string | null; protected hasLeading: boolean; protected hasTrailing: boolean; protected hasHeadline: boolean; protected hasSubtitle: boolean; protected hasSearch: boolean; private boundScrollHandler; private currentScrollElement; connectedCallback(): void; disconnectedCallback(): void; protected updated(changedProperties: PropertyValues<this>): void; protected get normalizedVariant(): string; protected get isCentered(): boolean; protected getRenderClasses(): Record<string, boolean>; protected handleLeadingSlotChange(e: Event): void; protected handleTrailingSlotChange(e: Event): void; protected handleHeadlineSlotChange(e: Event): void; protected handleSubtitleSlotChange(e: Event): void; protected handleSearchSlotChange(e: Event): void; protected handleDefaultSlotChange(e: Event): void; private setupScrollTarget; private cleanupScrollTarget; protected renderLeading(): TemplateResult; protected renderTrailing(): TemplateResult; protected renderTitleContent(): TemplateResult; protected renderSmallLayout(): TemplateResult; protected renderFlexibleLayout(): TemplateResult; protected renderSearchLayout(): TemplateResult; protected render(): TemplateResult; } export {}; //# sourceMappingURL=base-appbar.d.ts.map