Options accepted by createAsukaDesigner(...).

interface AsukaDesignerOptions {
    agency?: AsukaAgencyFeatureOptions;
    ai?: AsukaAiFeatureOptions;
    boot?: AsukaBootOptions;
    colors?: AsukaColorsConfig;
    debug?: AsukaDebugOptions;
    defaultRole?: string;
    engine?: AsukaRenderEngineKind | AsukaRenderEngineOptions;
    engines?: AsukaRenderEngineOptionsByKind;
    exports?: AsukaExportsFeatureOptions;
    fonts?: AsukaFontsConfig;
    i18n?: AsukaI18nOptions;
    icons?: Record<string, AsukaIconOverride>;
    initialState?: unknown;
    integrations?: AsukaIntegrationsConfig;
    layout?: LayoutConfig;
    license?: AsukaLicenseOptions;
    listeners?: Partial<Record<string, boolean>>;
    mode?: AsukaMode;
    moduleConfig?: AsukaModuleConfig;
    observability?: AsukaObservabilityOptions;
    pdf?: AsukaPdfOptions;
    permissions?: Partial<AsukaPermissions>;
    price?: string | number;
    priceFormat?: AsukaPriceFormatConfig;
    pricingRules?: AsukaPricingRule[];
    printingMethods?: AsukaPrintingMethod[];
    responsive?: AsukaResponsiveConfig;
    roles?: Record<string, Partial<AsukaPermissions>>;
    shell?: AsukaShellOptions;
    theme?: AsukaThemeOptions;
    ui?: AsukaUiOptions;
    uiScaling?: AsukaUiScalingOptions;
    views?: AsukaInitialViewConfig[];
}

Properties

Agency-only features such as white-label branding, advanced permissions and export/import helpers.

AI helpers such as text-to-image and background removal adapters.

Explicit boot strategy used to replace a product/session at startup.

Designer-level colors configuration.

Optional debug switches for boot/state/layout logs.

defaultRole?: string

Default role applied at boot.

Default rendering engine. Fabric remains the default 2D engine; 3D is intended for addon-backed views.

Optional per-engine loaders/configuration. Use this to lazy-load Fabric/Babylon by active view engine.

Paid export helpers such as PDF credit consumption and server-side HD rendering.

Global font registry loaded at boot.

Internationalization initialization payload.

icons?: Record<string, AsukaIconOverride>

Runtime icon overrides for menu/module buttons.

initialState?: unknown

Serialized full state restored automatically right after initialization.

Third-party integrations (API keys, endpoints, ...).

layout?: LayoutConfig

Layout, menus and selection menu presets.

Optional runtime licensing configuration.

listeners?: Partial<Record<string, boolean>>

Enable/disable individual listeners at boot.

mode?: AsukaMode

Global mode. In prod, some permissions default to stricter values.

moduleConfig?: AsukaModuleConfig

Per-module configuration (UI defaults, feature toggles).

Optional host-controlled production error reporting.

Optional PDF export support.

permissions?: Partial<AsukaPermissions>

Permission overrides merged on top of the selected role defaults. Example: { canMovePanels: true, canCollapsePanels: true } enables menu drag & drop and zone/panel collapse controls even in mode: 'prod'.

price?: string | number

Optional external/base price included by computed totals.

Default price formatting settings.

pricingRules?: AsukaPricingRule[]

Dynamic pricing rules evaluated by the pricing engine.

printingMethods?: AsukaPrintingMethod[]

Initial printing methods list.

Responsive shell/layout behavior for mobile and tablet containers.

roles?: Record<string, Partial<AsukaPermissions>>

Custom role presets merged on top of the built-in defaults.

Optional root shell sizing overrides.

Theme initialization payload.

UI behavior overrides such as the view pagination bar.

Keeps editor controls and helper overlays readable when the canvas is visually shrunk.

Optional initial views. Each view can override the root engine.