import { LitElement } from "lit";
import { Ref } from "lit/directives/ref.js";
export declare class GLChatGeminiLive extends LitElement {
    apiKey: string;
    videoElementRef: Ref<HTMLVideoElement>;
    canvasRef: Ref<HTMLCanvasElement>;
    private client;
    private session;
    private nextStartTime;
    private mediaStream;
    private sourceNode;
    private scriptProcessorNode;
    private sources;
    private frameInterval;
    private animationId?;
    private ctx;
    private inputAnalyser?;
    private outputAnalyser?;
    private inputAudioContext;
    private outputAudioContext;
    private isRecording;
    private status;
    private error;
    private modelTranscript;
    private invalidAPIkey;
    private connectedToGeminilive;
    private inputNode;
    private outputNode;
    static styles: import("lit").CSSResult;
    constructor();
    private initAudio;
    private initVisualization;
    private resize;
    private _animate;
    private drawCircularVisualizer;
    private initClient;
    private initSession;
    private appendTranscript;
    private updateStatus;
    private updateError;
    private startRecording;
    private stopRecording;
    protected firstUpdated(): void;
    disconnectedCallback(): void;
    render(): import("lit-html").TemplateResult<1>;
}
declare global {
    interface HTMLElementTagNameMap {
        "gl-chat-gemini-live": GLChatGeminiLive;
    }
}
