Persistent vertical relation between two component instances.

The upper component is centered above the lower component and follows its width while never exceeding upperMaxWidth. This is intentionally separate from catalog anchors: it can link any two placed instances without requiring model-specific connection points.

interface AsukaAssemblyStackLink {
    createdAt?: string;
    gap?: number;
    id: string;
    lowerComponentId: string;
    metadata?: Record<string, unknown>;
    syncWidth?: boolean;
    upperComponentId: string;
    upperMaxWidth?: number;
    widthAxis?: AsukaAssemblyStackWidthAxis;
}

Properties

createdAt?: string
gap?: number

Vertical gap in world units. When omitted, the spacing at link creation is preserved.

id: string
lowerComponentId: string
metadata?: Record<string, unknown>
syncWidth?: boolean

Resize the upper component when the lower width changes.

upperComponentId: string
upperMaxWidth?: number

Maximum world width restored when the lower component grows again.

Horizontal world axis used as the synchronized width. Defaults to auto.