/** * @callback Lookup * @param {number} start * @param {number} end * @param {[number, number]} [arr] Store the result into this array (and return it) * @returns {[number, number]} */ /** * A binned index for (overlapping) ranges that are sorted by their start position. * Each indexed range is associated with respective vertex indices. * * The indexing scheme is somewhat similar to Tabix (https://academic.oup.com/bioinformatics/article/27/5/718/262743). * * @param {number} size Number of bins * @param {[number, number]} domain Domain of positions * @param {(datum: T) => number} accessor Accessor for range's start position * @param {(datum: T) => number} [accessor2] Accessor for range's end position * @template T */ export function createBinningRangeIndexer(size: number, domain: [number, number], accessor: (datum: T) => number, accessor2?: (datum: T) => number): { (datum: T, startVertexIndex: number, endVertexIndex: number): void; getIndex: () => Lookup; }; export type Lookup = (start: number, end: number, arr?: [number, number]) => [number, number]; //# sourceMappingURL=binnedIndex.d.ts.map