UNPKG

@imgly/plugin-ai-image-generation-web

Version:

AI image generation plugin for the CE.SDK editor

53 lines (52 loc) 1.85 kB
import { type OpenAPIV3 } from 'openapi-types'; import CreativeEditorSDK, { CreativeEngine } from '@cesdk/cesdk-js'; import { ImageOutput, RenderCustomProperty, GetBlockInput, Provider, Middleware } from '@imgly/plugin-ai-generation-web'; import { ImageQuickActionSupportMap } from '../types'; type ImageProviderConfiguration = { proxyUrl: string; debug?: boolean; middlewares?: Middleware<any, any>[]; /** * @deprecated Use `middlewares` instead. */ middleware?: Middleware<any, any>[]; /** * Override provider's default history asset source */ history?: false | '@imgly/local' | '@imgly/indexedDB' | (string & {}); /** * Configure supported quick actions */ supportedQuickActions?: { [quickActionId: string]: Partial<ImageQuickActionSupportMap<any>[string]> | false | null; }; }; /** * Creates a base provider from schema. This should work out of the box * but may be rough around the edges and should/can be further customized. */ declare function createImageProvider<I extends Record<string, any>>(options: { modelKey: string; name?: string; schema: OpenAPIV3.Document; inputReference: string; useFlow?: 'placeholder' | 'generation-only'; initialize?: (context: { cesdk?: CreativeEditorSDK; engine: CreativeEngine; }) => void; renderCustomProperty?: RenderCustomProperty; supportedQuickActions?: ImageQuickActionSupportMap<I>; getBlockInput?: GetBlockInput<'image', I>; getImageSize?: (input: I) => { width: number; height: number; }; middleware?: Middleware<I, ImageOutput>[]; headers?: Record<string, string>; cesdk?: CreativeEditorSDK; }, config: ImageProviderConfiguration): Provider<'image', I, { kind: 'image'; url: string; }>; export default createImageProvider;