import { ec as EC, curve as curveI } from 'elliptic'; import * as BN from 'bn.js'; import BasePoint = curveI.base.BasePoint; export declare function defaultCurve(): Curve; export declare abstract class Curve { private _name; private _curve; private _order; private _generator; private _orderSize; constructor(_name: string, _curve: EC); /** * @description name of elliptic curve */ name(): string; /** * @description elliptic curve used for generating keys */ getCurve(): EC; /** * @description total number of points that we can have on out elliptic curve */ order(): BN; /** * @description (x, y) point which is base of the point the curve */ generator(): BasePoint; /** * @description size of the order in bytes */ orderSize(): number; } export declare class CurveSecp256k1 extends Curve { constructor(); } export declare class CurveEd25519 extends Curve { constructor(); }