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;
}
