/**
 * @license
 * Copyright 2023 Tyler Technologies, Inc. 
 * License: Apache-2.0
 */
import { AppBarProfileButtonProfileCardBuilder } from './app-bar-profile-button-constants';
import { BaseComponent, IBaseComponent } from '../../core/base/base-component';
export interface IAppBarProfileButtonComponent extends IBaseComponent {
    avatarImageUrl: string;
    avatarLetterCount: number;
    avatarText: string;
    avatarIcon: string;
    fullName: string;
    email: string;
    signOutButton: boolean;
    profileButton: boolean;
    signOutButtonText: string;
    profileButtonText: string;
    open: boolean;
    profileCardBuilder: (fn: AppBarProfileButtonProfileCardBuilder) => void;
}
declare global {
    interface HTMLElementTagNameMap {
        'forge-app-bar-profile-button': IAppBarProfileButtonComponent;
    }
}
/**
 * The web component class behind the `<forge-app-bar-profile-button>` custom element.
 *
 * @tag forge-app-bar-profile-button
 */
export declare class AppBarProfileButtonComponent extends BaseComponent implements IAppBarProfileButtonComponent {
    static get observedAttributes(): string[];
    private _foundation;
    constructor();
    initializedCallback(): void;
    connectedCallback(): void;
    disconnectedCallback(): void;
    attributeChangedCallback(name: string, oldValue: string, newValue: string): void;
    fullName: string;
    email: string;
    avatarImageUrl: string;
    avatarLetterCount: number;
    avatarText: string;
    avatarIcon: string;
    signOutButton: boolean;
    profileButton: boolean;
    signOutButtonText: string;
    profileButtonText: string;
    open: boolean;
    /** Sets the profile card builder callback that will be used to add extra content to the profile card. */
    profileCardBuilder: AppBarProfileButtonProfileCardBuilder;
}
