import { FiniteField } from './ff'; export declare class EdCurve { static ff: FiniteField; static ZERO: Uint8Array; static validate: (point: Uint8Array) => boolean; static baseMul: (r: Uint8Array) => Uint8Array; static negPoint: (point: Uint8Array) => Uint8Array; static addPoint: (pointA: Uint8Array, pointB: Uint8Array) => Uint8Array; static mulScalar: (point: Uint8Array, scalar: Uint8Array) => Uint8Array; static getDerivedKey: (privateKey: Uint8Array) => Uint8Array; static getPublicKey: (privateKey: Uint8Array, derived?: boolean) => Uint8Array; } export declare class EdTSS { static ff: FiniteField; static signatureLength: number; static privateKeyLength: number; static publicKeyLength: number; static randomnessLength: number; static shareRandomness: (t: number, n: number, indice: Uint8Array[], seed?: Uint8Array) => { shares: Uint8Array[]; R: Uint8Array; r: Uint8Array; zkp: Uint8Array[]; }; static addSig: (sigs: Uint8Array[]) => Uint8Array; static sign: (msg: Uint8Array, R: Uint8Array, publicKey: Uint8Array, r: Uint8Array, derivedKey: Uint8Array) => Uint8Array; static verify: (msg: Uint8Array, R: Uint8Array, publicKey: Uint8Array, index: Uint8Array, sig: Uint8Array, pzkp: Uint8Array[], rzkp: Uint8Array[]) => boolean; }