import { EventEmitter } from '../../stencil-public-runtime';
import { Meeting } from '../../types/rtk-client';
import { Size, States } from '../../types/props';
import { UIConfig } from '../../types/ui-config';
import { IconPack } from '../../lib/icons';
import { RtkI18n } from '../../lib/lang';
import { SocketConnectionState } from '@cloudflare/realtimekit';
/**
 * A screen shown before joining the meeting, where you can edit your display name,
 * and media settings.
 */
export declare class RtkSetupScreen {
    private inputEl;
    /** Meeting object */
    meeting: Meeting;
    /** States object */
    states: States;
    /** Size */
    size: Size;
    /** Config object */
    config: UIConfig;
    /** Emits updated state data */
    stateUpdate: EventEmitter<States>;
    /** Icon pack */
    iconPack: IconPack;
    /** Language */
    t: RtkI18n;
    displayName: string;
    isJoining: boolean;
    joinError?: string;
    joinErrorCode?: string;
    canEditName: boolean;
    canProduceAudio: boolean;
    connectionState: SocketConnectionState['state'];
    connectedCallback(): void;
    disconnectedCallback(): void;
    componentDidLoad(): void;
    meetingChanged(meeting: Meeting): void;
    private socketStateUpdate;
    private join;
    render(): any;
}
