/** * Match one set of time intervals to another, maximizing Jaccard similarity. * * @param {Array>} intervalsFrom - (n, 2) source intervals. * @param {Array>} intervalsTo - (m, 2) target intervals. * @param {Object} [options] * @param {boolean} [options.strict=true] - if true, throw when a query * interval is disjoint from every target; if false, match the closest * disjoint target instead. * @returns {Uint32Array} for each source interval, the matched target index. */ export function matchIntervals(intervalsFrom: Array>, intervalsTo: Array>, { strict }?: { strict?: boolean; }): Uint32Array; /** * Match one set of events to another (nearest neighbor with optional * left/right constraints). * * @param {Array|Float32Array|Float64Array} eventsFrom * @param {Array|Float32Array|Float64Array} eventsTo * @param {Object} [options] * @param {boolean} [options.left=true] - allow matches left of the source event. * @param {boolean} [options.right=true] - allow matches right of the source event. * @returns {Int32Array} for each source event, the matched target index. */ export function matchEvents(eventsFrom: Array | Float32Array | Float64Array, eventsTo: Array | Float32Array | Float64Array, { left, right }?: { left?: boolean; right?: boolean; }): Int32Array;