import { PropertyValueMap } from 'lit';
import { ThemeController } from './controllers/theme-controller';
import { WeavyTypeComponent } from './classes/weavy-type-component';
import { CreateConversationController, CreateConversationProps } from './controllers/create-conversation-controller';
import { MemberIdType } from './types/members.types';
declare global {
    interface HTMLElementTagNameMap {
        "wy-messenger-new": WyMessengerNew;
    }
}
/**
 * Weavy messenger component to render a create conversation button with dialogs.
 *
 * **Used sub components:**
 *
 * - [`<wy-conversation-new>`](./components/wy-conversation-new.ts)
 *
 * @tagname wy-messenger-new
 * @fires {WyActionEventType} wy-action - Emitted when a conversation app is created and should be selected.
 */
export declare class WyMessengerNew extends WeavyTypeComponent implements CreateConversationProps {
    static styles: import('lit').CSSResult[];
    /** @internal */
    protected theme: ThemeController;
    /**
     * Disabled link matching/consuming.
     * @internal
     */
    matchesLink(): boolean;
    /** @internal */
    protected createConversationController: CreateConversationController;
    /** @internal */
    private conversationNewRef;
    /**
     * Creates a new conversation.
     *
     * When in agent mode, the conversation is created instantly.
     *
     * @param members - Optional array of member ids or member uids.
     */
    createConversation(members?: MemberIdType[]): Promise<import('./contexts').AppType>;
    /**
     * Opens the select-member dialog.
     *
     * @returns Promise resolving to the selected member ids or uids.
     */
    selectMembers(): Promise<MemberIdType[] | undefined>;
    protected willUpdate(changedProperties: PropertyValueMap<this>): Promise<void>;
    render(): import('../node_modules/lit-html/node/lit-html.js').TemplateResult<1>;
}
//# sourceMappingURL=wy-messenger-new.d.ts.map