import { Timestamp } from '@firebase/firestore';
import { QAObj } from '../../types';
import { Props } from './CMCRoom';
/** メッセージの送信処理*/
declare function submit(firebaseUpload: (file: File) => Promise<string>): Promise<false | undefined>;
declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<Props>, {
    firstModelSpinner: boolean;
    firstLoadingCount: number;
    addLoadingCount: number;
    height: string;
    authCounterDown: number;
    authCounterUp: number;
    finalConfBody: string;
    finalConfTitle: string;
    qAModeOptions: () => {
        lastQuestion: boolean;
        isQAMode: boolean;
        question: {
            [x: string]: any;
            body: string;
            fileSrc: string;
            fileType: string;
            user: string;
            replyId: string;
            mentionIds: string[];
            hidden: boolean;
            editHistory: string[];
            isQAMode: boolean;
            mode: "contact" | "chat";
            createdGroupBy?: string | undefined;
            replyRequiredDataType: "" | "text" | "file";
            InquiryQuestion?: import("../../main").InquiryQuestion | undefined;
            createdBy: string;
            updatedBy: string;
            createdAt: Date | Timestamp;
            updatedAt: Date | Timestamp;
            id: string;
        };
        answer: {
            [x: string]: any;
            body: string;
            fileSrc: string;
            fileType: string;
            user: string;
            replyId: string;
            mentionIds: string[];
            hidden: boolean;
            editHistory: string[];
            isQAMode: boolean;
            mode: "contact" | "chat";
            createdGroupBy?: string | undefined;
            replyRequiredDataType: "" | "text" | "file";
            InquiryQuestion?: import("../../main").InquiryQuestion | undefined;
            createdBy: string;
            updatedBy: string;
            createdAt: Date | Timestamp;
            updatedAt: Date | Timestamp;
            id: string;
        };
        deleteFlag: string;
    };
    backgroundColor: string;
    noEditLog: boolean;
    autoCreateRoom: boolean;
    isCallable: boolean;
    isDisplayName: boolean;
    convertTargetStrings: () => never[];
    targetStyle: string;
    uploadImages: () => never[];
    isAndroidCamera: boolean;
    adjustPositionPx: number;
}>, {
    submit: typeof submit;
}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
    onClickClose: (value: boolean) => void;
    onSubmit: () => void;
    "update:firstModelSpinner": (value: boolean) => void;
    "update:qAModeOptions": (value: QAObj) => void;
    "onClick:reset": () => void;
    "onClick:back": () => void;
    "update:chatRoomId": (value: string) => void;
    uploadImage: () => void;
    uploadMovie: () => void;
    "update:uploadImage": (value: File[]) => void;
}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<Props>, {
    firstModelSpinner: boolean;
    firstLoadingCount: number;
    addLoadingCount: number;
    height: string;
    authCounterDown: number;
    authCounterUp: number;
    finalConfBody: string;
    finalConfTitle: string;
    qAModeOptions: () => {
        lastQuestion: boolean;
        isQAMode: boolean;
        question: {
            [x: string]: any;
            body: string;
            fileSrc: string;
            fileType: string;
            user: string;
            replyId: string;
            mentionIds: string[];
            hidden: boolean;
            editHistory: string[];
            isQAMode: boolean;
            mode: "contact" | "chat";
            createdGroupBy?: string | undefined;
            replyRequiredDataType: "" | "text" | "file";
            InquiryQuestion?: import("../../main").InquiryQuestion | undefined;
            createdBy: string;
            updatedBy: string;
            createdAt: Date | Timestamp;
            updatedAt: Date | Timestamp;
            id: string;
        };
        answer: {
            [x: string]: any;
            body: string;
            fileSrc: string;
            fileType: string;
            user: string;
            replyId: string;
            mentionIds: string[];
            hidden: boolean;
            editHistory: string[];
            isQAMode: boolean;
            mode: "contact" | "chat";
            createdGroupBy?: string | undefined;
            replyRequiredDataType: "" | "text" | "file";
            InquiryQuestion?: import("../../main").InquiryQuestion | undefined;
            createdBy: string;
            updatedBy: string;
            createdAt: Date | Timestamp;
            updatedAt: Date | Timestamp;
            id: string;
        };
        deleteFlag: string;
    };
    backgroundColor: string;
    noEditLog: boolean;
    autoCreateRoom: boolean;
    isCallable: boolean;
    isDisplayName: boolean;
    convertTargetStrings: () => never[];
    targetStyle: string;
    uploadImages: () => never[];
    isAndroidCamera: boolean;
    adjustPositionPx: number;
}>>> & {
    "onOnClick:reset"?: (() => any) | undefined;
    "onOnClick:back"?: (() => any) | undefined;
    onOnSubmit?: (() => any) | undefined;
    "onUpdate:firstModelSpinner"?: ((value: boolean) => any) | undefined;
    onOnClickClose?: ((value: boolean) => any) | undefined;
    "onUpdate:qAModeOptions"?: ((value: QAObj) => any) | undefined;
    "onUpdate:chatRoomId"?: ((value: string) => any) | undefined;
    onUploadImage?: (() => any) | undefined;
    onUploadMovie?: (() => any) | undefined;
    "onUpdate:uploadImage"?: ((value: File[]) => any) | undefined;
}, {
    height: string;
    convertTargetStrings: string[];
    targetStyle: string;
    noEditLog: boolean;
    firstModelSpinner: boolean;
    firstLoadingCount: number;
    addLoadingCount: number;
    authCounterDown: number;
    authCounterUp: number;
    finalConfBody: string;
    finalConfTitle: string;
    qAModeOptions: QAObj;
    autoCreateRoom: boolean;
    isCallable: boolean;
    isDisplayName: boolean;
    uploadImages: File[];
    isAndroidCamera: boolean;
    adjustPositionPx: number;
}, {}>, {
    button?(_: {
        style: {
            "margin-bottom": string;
        };
    }): any;
    contact?(_: {
        style: {
            "margin-bottom": string;
        };
    }): any;
    subContact?(_: {
        style: {
            "margin-bottom": string;
        };
    }): any;
}>;
export default _default;
type __VLS_NonUndefinedable<T> = T extends undefined ? never : T;
type __VLS_TypePropsToRuntimeProps<T> = {
    [K in keyof T]-?: {} extends Pick<T, K> ? {
        type: import('vue').PropType<__VLS_NonUndefinedable<T[K]>>;
    } : {
        type: import('vue').PropType<T[K]>;
        required: true;
    };
};
type __VLS_WithDefaults<P, D> = {
    [K in keyof Pick<P, keyof P>]: K extends keyof D ? __VLS_Prettify<P[K] & {
        default: D[K];
    }> : P[K];
};
type __VLS_Prettify<T> = {
    [K in keyof T]: T[K];
} & {};
type __VLS_WithTemplateSlots<T, S> = T & {
    new (): {
        $slots: S;
    };
};
