@gent-js/gent
Version:
template-based data generator.
16 lines (15 loc) • 528 B
TypeScript
export interface WeightedItem<Item> {
readonly content: Item;
readonly weight?: number;
}
export declare class WeightedItemFeeder<Item> {
private totalWeight;
private normalizedWeightedItems;
constructor(...weightedItems: WeightedItem<Item>[]);
get size(): number;
addItem(item: Item, weight?: number): void;
addWeightedItem(weightedItem: WeightedItem<Item>): void;
getItem(): Item | undefined;
private updateTotalWeight;
}
export declare function normalizeWeight(value: number): number;