export = EdwardsCurve;
declare function EdwardsCurve(conf: any): void;
declare class EdwardsCurve {
    constructor(conf: any);
    twisted: boolean;
    mOneA: boolean;
    extended: boolean;
    a: any;
    c: any;
    c2: any;
    d: any;
    dd: any;
    oneC: boolean;
    _mulA(num: any): any;
    _mulC(num: any): any;
    jpoint(x: any, y: any, z: any, t: any): Point;
    pointFromX(x: any, odd: any): Point;
    pointFromY(y: any, odd: any): Point;
    validate(point: any): boolean;
    pointFromJSON(obj: any): Point;
    point(x: any, y: any, z: any, t: any): Point;
}
declare function Point(curve: any, x: any, y: any, z: any, t: any): void;
declare class Point {
    constructor(curve: any, x: any, y: any, z: any, t: any);
    x: any;
    y: any;
    z: any;
    t: any;
    zOne: boolean;
    inspect(): string;
    isInfinity(): boolean;
    _extDbl(): any;
    _projDbl(): any;
    dbl(): any;
    _extAdd(p: any): any;
    _projAdd(p: any): any;
    add(p: any): any;
    mul(k: any): any;
    mulAdd(k1: any, p: any, k2: any): any;
    jmulAdd(k1: any, p: any, k2: any): any;
    normalize(): Point;
    neg(): any;
    getX(): any;
    getY(): any;
    eq(other: any): boolean;
    eqXToP(x: any): boolean;
    toP: any;
    mixedAdd: any;
}
declare namespace Point {
    function fromJSON(curve: any, obj: any): Point;
}
