import type { Configuration } from '@cesdk/cesdk-js'; import type CreativeEditorSDK from '@cesdk/cesdk-js'; import { DefineComponent } from 'vue'; import { PropType } from 'vue'; /** * A production-ready Vue 3 wrapper for the Creative Editor SDK. * * Provides a Vue component with proper error handling, loading state events, * and lifecycle management for integrating the Creative Editor SDK. The component * handles SDK initialization and cleanup using Vue's Composition API. * * @example Basic Usage * ```vue * * * * ``` * * @example With Error Handling * ```vue * * * * ``` * * @remarks * - The component automatically handles SDK cleanup on unmount * - Uses Vue 3 Composition API for optimal performance and TypeScript support * - For render-time errors, we recommend using Vue's error handling mechanisms * @category Framework Wrapper * @public */ declare const CreativeEditor: CreativeEditorComponent; export { CreativeEditor } export default CreativeEditor; /** * Component type for the CreativeEditor Vue component. * @public * */ export declare type CreativeEditorComponent = DefineComponent<{ config: { type: PropType; required: true; }; init: { type: PropType<(cesdk: CreativeEditorSDK) => void | Promise>; }; height: { type: PropType; default: string; }; width: { type: PropType; default: string; }; class: { type: StringConstructor; default: undefined; }; }, {}, {}, {}, {}, {}, {}, { 'loading-state-change': (state: CreativeEditorLoadingState) => void; error: (error: CreativeEditorError) => void; }>; /** * Emits for the CreativeEditor Vue component. * @public */ export declare type CreativeEditorEmits = { /** Emitted when loading state changes */ 'loading-state-change': (state: CreativeEditorLoadingState) => void; /** Emitted when an error occurs */ error: (error: CreativeEditorError) => void; }; /** * Error that occurred during Creative Editor SDK initialization. * @public */ export declare interface CreativeEditorError { /** The error message */ message: string; /** The original error object */ cause?: unknown; } /** * Loading state of the Creative Editor SDK. * @public */ export declare type CreativeEditorLoadingState = 'idle' | 'loading' | 'loaded' | 'error'; /** * Props for the CreativeEditor Vue component. * @public */ export declare interface CreativeEditorProps { /** Configuration object for the Creative Editor SDK */ config: Configuration; /** Initialization function called after SDK instance is created */ init: (cesdk: CreativeEditorSDK) => void | Promise; /** Height of the editor container */ height?: number | string; /** Width of the editor container */ width?: number | string; /** CSS class name for the container element */ class?: string; } export { }