export interface StoryMapSource { title: string; capabilities: StoryMapCapability[]; } export interface StoryMapCapability { id: string; title: string; features: StoryMapFeature[]; } export interface StoryMapFeature { id: string; title: string; businessStories: string[]; technicalStories: string[]; } export interface LucidShapePayload { stableId: string; type: "sticky_note" | "group"; text: string; x: number; y: number; width: number; height: number; fillColor: string; } export interface LucidStoryMapPayload { product: "lucidspark"; use_assisted_layout: false; title: string; contentType: "application/json; charset=utf-8"; shapes: LucidShapePayload[]; } export interface LucidStoryMapCache { boardId: string; layoutStrategy: "story-map-v1"; syncedAt: string; items: LucidCachedItem[]; } export interface LucidCachedItem { stableId: string; lucidId: string; text: string; x: number; y: number; width: number; height: number; kind: LucidShapePayload["type"]; parentId?: string; } export interface LucidDiffPlan { creates: LucidShapePayload[]; updates: LucidShapePayload[]; deletes: LucidCachedItem[]; requiresDeleteConfirmation: boolean; } export declare const LUCID_STORY_MAP_LAYOUT: { columnStep: number; rowStep: number; bannerHeight: number; stickyWidth: number; stickyHeight: number; originX: number; originY: number; colors: { capability: string; feature: string; business: string; technical: string; }; }; export declare function createLucidsparkStoryMap(source: StoryMapSource): LucidStoryMapPayload; export declare function diffLucidStoryMap(desired: LucidStoryMapPayload, cache: LucidStoryMapCache, mode: "create" | "update" | "reflow"): LucidDiffPlan; export declare function reflowGroupingBanners(payload: LucidStoryMapPayload): LucidStoryMapPayload;