UNPKG

@safs.io/match

Version:

Gale/Shapely deferred acceptance algorithm

31 lines (30 loc) 1.11 kB
import { LeftEl } from "./left-element"; export declare type RightId = string | number; export declare type RightSourceObject = { id: RightId; capacity: number; }; declare type Index = number; declare type RankTable = Record<LeftEl["id"], Index>; declare type Capacity = number; export declare class RightEl { _id: RightId; _capacity: Capacity; _rankedCounterparts: LeftEl[]; _acceptedCounterparts: LeftEl[]; _rankTable: RankTable; _sourceObject: RightSourceObject; constructor(sourceObject: RightSourceObject); get id(): RightId; get acceptedCounterparts(): LeftEl[]; get lastAcceptedCounterpart(): LeftEl; get atOrOverCapacity(): boolean; get rankedCounterparts(): LeftEl[]; set rankedCounterparts(counterparts: LeftEl[]); get sourceObject(): RightSourceObject; removeLastAcceptedCounterpart(): LeftEl | undefined; acceptCounterpart(counterpart: LeftEl): LeftEl | null | undefined; isRankedBetterThan(counterpart: LeftEl, counterpartToRankAgainst: LeftEl): boolean; willAcceptCounterpart(counterpart: LeftEl): boolean; } export {};