29 lines
657 B
TypeScript
29 lines
657 B
TypeScript
export interface Dimensions {
|
|
width: number;
|
|
depth: number;
|
|
height: number;
|
|
}
|
|
|
|
export interface AppConfig {
|
|
drawer: Dimensions;
|
|
wallThickness: number;
|
|
printerTolerance: number; // Gap between parts for fit
|
|
}
|
|
|
|
// Represents a vertical or horizontal divider position (0 to 1)
|
|
export interface LayoutSplits {
|
|
x: number[]; // Vertical dividers (along width)
|
|
y: number[]; // Horizontal dividers (along depth)
|
|
}
|
|
|
|
// A single generated bin part
|
|
export interface GeneratedPart {
|
|
id: string;
|
|
name: string;
|
|
width: number;
|
|
depth: number;
|
|
height: number;
|
|
x: number; // Position in drawer
|
|
y: number; // Position in drawer
|
|
color: string;
|
|
} |