@difizen/mana-common
Version:
23 lines • 1.16 kB
TypeScript
import type { MaybePromise } from '.';
export declare enum Priority {
PRIOR = 1000,
DEFAULT = 100,
IDLE = -1
}
export declare namespace Priority {
type PriorityObject<T> = {
readonly priority: number;
readonly value: T;
};
type GetPriority<T> = (value: T) => MaybePromise<number>;
type GetPrioritySync<T> = (value: T) => number;
function isValid<T>(p: PriorityObject<T>): boolean;
function compare<T>(p: PriorityObject<T>, p2: PriorityObject<T>): number;
function toPriorityObject<T>(rawValue: T, getPriority: GetPriority<T>): Promise<PriorityObject<T>>;
function toPriorityObject<T>(rawValue: T[], getPriority: GetPriority<T>): Promise<PriorityObject<T>[]>;
function sort<T>(values: T[], getPriority: GetPriority<T>): Promise<PriorityObject<T>[]>;
function toPriorityObjectSync<T>(rawValue: T, getPriority: GetPrioritySync<T>): PriorityObject<T>;
function toPriorityObjectSync<T>(rawValue: T[], getPriority: GetPrioritySync<T>): PriorityObject<T>[];
function sortSync<T>(values: T[], getPriority: GetPrioritySync<T>): PriorityObject<T>[];
}
//# sourceMappingURL=priority.d.ts.map