officekit
Version:
A toolkit to represent and visualize office spaces. It also provides functionality to simulate usage of offices, and calculate a score given a fitness function. It also have functionatlity for automatic allocation of offices using a genetic algorithm.
21 lines (20 loc) • 798 B
TypeScript
import type { OfficeFloor } from './OfficeFloor';
import { Reservations } from './reservations/Reservations';
import type { Seat } from './Seat';
import type { World } from './World';
export declare class OfficeBuilding {
world: World;
label: string;
width: number;
height: number;
floors: Map<number, OfficeFloor>;
reservations: Reservations;
constructor(world: World, label?: string, width?: number, height?: number);
getSeat(id: number): Seat | null;
getUniqueSeats(count: number): Seat[];
getUniqueSeatOtherThan(otherSeats: Seat[], thisSeat: Seat, radius?: number): Seat;
getAllSeats(): Seat[];
distanceBetweenSeats(seat1: Seat, seat2: Seat): number;
seatsIterator(): Generator<Seat, void, unknown>;
addFloor(floor: OfficeFloor): void;
}