/**
 * Represents animation of a meaningful multi-variate thing, such as 3d vector or single scalar
 */
export class AnimationTrack {
    /**
     *
     * @param {AnimationCurve[]} curves
     * @param {string} [name]
     * @return {AnimationTrack}
     */
    static from(curves?: AnimationCurve[], name?: string): AnimationTrack;
    /**
     * Human-readable label
     * @type {string}
     */
    name: string;
    /**
     * What property are we animating?
     * @type {string[]}
     */
    path: string[];
    /**
     *
     * @type {AnimationCurve[]}
     */
    curves: AnimationCurve[];
    /**
     * Special designator to help with interpolation
     * For example, quaternion tracks will require sampled value to be normalized
     * Based on this value, different bindings will be used
     * @type {string}
     */
    type: string;
    /**
     *
     * @returns {number}
     */
    get start_time(): number;
    /**
     *
     * @returns {number}
     */
    get end_time(): number;
    /**
     * Time duration of the longest curve, in seconds
     * @return {number}
     */
    get duration(): number;
    /**
     *
     * @return {number}
     */
    get curve_count(): number;
    /**
     *
     * @param {number[]|Float32Array|Float64Array} output
     * @param {number} output_offset
     * @param {number} time
     */
    sample(output: number[] | Float32Array | Float64Array, output_offset: number, time: number): void;
    /**
     * @readonly
     * @type {boolean}
     */
    readonly isAnimationTrack: boolean;
}
//# sourceMappingURL=AnimationTrack.d.ts.map