export interface SourceSeedMock { seedItemId: number; cropConfigId: number; name: string; assetId: string; count: number; bundle: string; resource: string; crop?: SourceCropMock; } export interface SourceCropStageMock { phaseName: string; durationSeconds: number; assetId: string; resource: string; originalSize: { width: number; height: number; }; sourceOffset?: { x: number; y: number; }; } export interface SourceCropMock { cropConfigId: number; name: string; assetName: string; growPhases: string; maturePhaseName: string; requiredLevel: number; fruitItemId: number; fruitCount: number; fruitSalePrice: number; seedPrice: number; description: string; stages: SourceCropStageMock[]; } export interface SourceLandInteractionRule { selectableState: string; noResponseStates: string[]; }