import React from 'react';
import { FormFieldProps, FormProps } from '@parlor/ui/form';
type UserProps = {
    email: string;
    name: string;
    titlePlaceholder?: string;
    uid?: string;
};
export type SidebarHeaderProps = {
    /**
     * add something button
     */
    addButton?: JSX.Element;
    /**
     * autoFocusOnFirstName autofocus on first name
     */
    autoFocusOnFirstName?: boolean;
    /**
     * back button text - 'Back' | 'Collapse'
     */
    backButtonText?: 'Back' | 'Collapse';
    /**
     * className wrapper className
     */
    className?: string;
    /**
     * closeSidebar is a function that closes the sidebar
     */
    closeSidebar: (event: {
        preventDefault: () => void;
    }) => void;
    /**
     * dropdownItems is an array consisting of the items to display in the dropDown
     */
    dropdownItems: string[];
    /**
     * form properties
     */
    formProps?: Partial<FormProps<any>>;
    /**
     * headerTitleSize size for header title text
     */
    headerTitleSize?: 'middle' | 'large';
    /**
     * image url
     */
    image?: string | null;
    /**
     * show back button
     */
    isBackButton?: boolean;
    /**
     * show close button
     */
    isCloseButton?: boolean;
    /**
     * show drop down
     * */
    isDropdown?: boolean;
    /**
     * isLoading  is user data currently loading
     */
    isLoading?: boolean;
    /**
     * show resolve button
     */
    isResolveButton?: boolean;
    /**
     * flag isTitleEditable=false prevent header edit
     */
    isTitleEditable?: boolean;
    isTitleEditableByDefault?: boolean;
    /**
     * Boolean that tells if VIP or not
     */
    isVip?: boolean;
    /**
     * no title
     */
    noTitle?: boolean;
    /**
     * onChange handles the form field(s) changing
     */
    onChange?: (value: string) => void;
    /**
     * handle click on back button
     */
    onClickBack?: (event: React.MouseEventHandler<HTMLElement> & React.MouseEvent<HTMLButtonElement, MouseEvent>) => void;
    /**
     * onSelect function for dropDown
     */
    onDropdownSelect(value: any): void;
    /**
     * Placeholder for the text Input
     */
    placeholder: string;
    /**
     * handles the resolve button click
     */
    resolve?: (event: any) => void | React.Dispatch<React.SetStateAction<string>>;
    /**
     * input validation rules
     */
    rules?: FormFieldProps['rules'];
    /**
     * title
     */
    title?: string;
    /**
     * titlePlaceholder placeholder for title
     */
    titlePlaceholder?: string;
    /**
     * topicID
     */
    topicID?: string;
    /**
     * a text to be rendered in the component.
     */
    type: '' | 'topic' | 'theme' | 'account' | 'user' | 'need';
    /**
     * user props
     */
    userProps?: UserProps | Partial<UserProps>;
};
export declare function UserSidebarHeader({ addButton, closeSidebar, dropdownItems, onChange, onDropdownSelect, resolve, type, isResolveButton, isCloseButton, isDropdown, isVip, userProps, rules, noTitle, title, isBackButton, backButtonText, formProps, className, autoFocusOnFirstName, isLoading, onClickBack, isTitleEditableByDefault, }: SidebarHeaderProps): JSX.Element;
export {};
