import '../../../assert/js/assert.js';
import '../../../globals.js';
export default class Overlap {
    a: number;
    b: number;
    t0: number;
    t1: number;
    qt0: number;
    qt1: number;
    /**
     * Creates an overlap based on two segments with their t-values (parametric value) within the range of [0,1]
     * (inclusive). The t value from the first curve can be mapped to an equivalent t value from the second curve such
     * that first( t ) === second( a * t + b ).
     *
     * Endpoint values for the actual overlap will be computed, such that
     * - first( t0 ) === second( qt0 )
     * - first( t1 ) === second( qt1 )
     * - All of those t values are in the range [0,1]
     */
    constructor(a: number, b: number);
    /**
     * Maps a t value from the first curve to the second curve (assuming it is within the overlap range).
     */
    apply(t: number): number;
    /**
     * Maps a t value from the second curve to the first curve (assuming it is within the overlap range).
     */
    applyInverse(t: number): number;
    /**
     * Returns a new overlap that should map t values of a0 => b0 and a1 => b1
     */
    static createLinear(a0: number, b0: number, a1: number, b1: number): Overlap;
}
//# sourceMappingURL=Overlap.d.ts.map