import EmbeddedController from '../util/bluepicEmbed';
import { Template } from '@bluepic/types';
declare const _sfc_main: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
    templateId: {
        type: StringConstructor;
        required: true;
    };
    embedApiBaseUrl: {
        type: StringConstructor;
        required: true;
    };
    env: {
        type: StringConstructor;
        required: true;
    };
    cloudflarePagesHostname: {
        type: StringConstructor;
        required: true;
    };
    bxCoreVersion: {
        type: StringConstructor;
        required: false;
        default: string;
    };
    authorization: {
        type: StringConstructor;
        required: false;
        default: undefined;
    };
    data: {
        type: ObjectConstructor;
        required: false;
        default: () => {};
    };
    fonts: {
        type: ArrayConstructor;
        required: false;
        default: () => never[];
    };
    webgl: {
        type: BooleanConstructor;
        required: false;
        default: boolean;
    };
    resolution: {
        type: NumberConstructor;
        required: false;
        default: number;
    };
    asyncSerial: {
        type: BooleanConstructor;
        required: false;
        default: boolean;
    };
    baseSerial: {
        type: null;
        required: false;
    };
}>, {
    props: any;
    emit: (event: "update:data" | "update:serial" | "update:ready" | "error" | "update:globalScope", ...args: any[]) => void;
    knownBxCoreVersion: import("vue").ComputedRef<any>;
    asyncSerialIsFinallyEnabled: import("vue").ComputedRef<any>;
    maxTries: number;
    serialPromise: Promise<Template.Serial> | undefined;
    frameURL: import("vue").ComputedRef<string>;
    ready: import("vue").Ref<boolean, boolean>;
    serial: import("vue").Ref<Template.Serial | undefined, Template.Serial | undefined>;
    frameRef: import("vue").Ref<HTMLIFrameElement | undefined, HTMLIFrameElement | undefined>;
    controller: import("vue").Ref<EmbeddedController | undefined, EmbeddedController | undefined>;
    busy: boolean;
    waiting: boolean;
    update: () => void;
    resolveData: () => Promise<{
        [k: string]: any;
    } | undefined>;
    webglSupported: () => Promise<boolean>;
    renderWebGL: (options: {
        type: 'image/png' | 'image/jpeg' | 'image/jpge' | 'image/webp';
        resolution?: number;
        quality?: number;
        area?: {
            x: number;
            y: number;
            width: number;
            height: number;
        };
    }) => Promise<Blob>;
    renderSVG: () => Promise<Document>;
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("update:data" | "update:serial" | "update:ready" | "error" | "update:globalScope")[], "update:data" | "update:serial" | "update:ready" | "error" | "update:globalScope", import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
    templateId: {
        type: StringConstructor;
        required: true;
    };
    embedApiBaseUrl: {
        type: StringConstructor;
        required: true;
    };
    env: {
        type: StringConstructor;
        required: true;
    };
    cloudflarePagesHostname: {
        type: StringConstructor;
        required: true;
    };
    bxCoreVersion: {
        type: StringConstructor;
        required: false;
        default: string;
    };
    authorization: {
        type: StringConstructor;
        required: false;
        default: undefined;
    };
    data: {
        type: ObjectConstructor;
        required: false;
        default: () => {};
    };
    fonts: {
        type: ArrayConstructor;
        required: false;
        default: () => never[];
    };
    webgl: {
        type: BooleanConstructor;
        required: false;
        default: boolean;
    };
    resolution: {
        type: NumberConstructor;
        required: false;
        default: number;
    };
    asyncSerial: {
        type: BooleanConstructor;
        required: false;
        default: boolean;
    };
    baseSerial: {
        type: null;
        required: false;
    };
}>> & Readonly<{
    "onUpdate:data"?: ((...args: any[]) => any) | undefined;
    "onUpdate:serial"?: ((...args: any[]) => any) | undefined;
    "onUpdate:ready"?: ((...args: any[]) => any) | undefined;
    onError?: ((...args: any[]) => any) | undefined;
    "onUpdate:globalScope"?: ((...args: any[]) => any) | undefined;
}>, {
    data: Record<string, any>;
    bxCoreVersion: string;
    authorization: string;
    fonts: unknown[];
    webgl: boolean;
    resolution: number;
    asyncSerial: boolean;
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
export default _sfc_main;
//# sourceMappingURL=BluepicEmbedded.vue.d.ts.map