import { BasePolynomialTransformation } from './BasePolynomialTransformation.js';
import type { Point } from '@allmaps/types';
/**
 * 2D Third-order Polynomial transformation
 */
export declare class Polynomial3 extends BasePolynomialTransformation {
    constructor(sourcePoints: Point[], destinationPoints: Point[]);
    getSourcePointCoefsArray(sourcePoint: Point): number[];
    /**
     * Get 1x3 coefsArray, populating the Nx3 coefsArrayMatrix
     * 1 x0 y0 x0^2 y0^2 x0*y0 x0^3 y0^3 x0^2*y0 x0*y0^2
     * ...
     *
     * @param sourcePoint
     */
    static getPolynomial3SourcePointCoefsArray(sourcePoint: Point): number[];
    evaluateFunction(newSourcePoint: Point): Point;
    evaluatePartialDerivativeX(newSourcePoint: Point): Point;
    evaluatePartialDerivativeY(newSourcePoint: Point): Point;
}
