import { Commitment, PedersenParams } from '../commit/pedersen.js';
import { EqualityProof } from '../commit/equality.js';
import { MultProof } from '../commit/mult.js';
import { Group } from '../curves/group.js';
import { MultiMult } from '../curves/multimult.js';
export declare class PointAddProof {
    C_8: Group.Point;
    C_10: Group.Point;
    C_11: Group.Point;
    C_13: Group.Point;
    pi_8: MultProof;
    pi_10: MultProof;
    pi_11: MultProof;
    pi_13: MultProof;
    pi_x: EqualityProof;
    pi_y: EqualityProof;
    constructor(C_8: Group.Point, C_10: Group.Point, C_11: Group.Point, C_13: Group.Point, pi_8: MultProof, pi_10: MultProof, pi_11: MultProof, pi_13: MultProof, pi_x: EqualityProof, pi_y: EqualityProof);
    eq(o: PointAddProof): boolean;
}
export declare function provePointAdd(params: PedersenParams, P: Group.Point, Q: Group.Point, R: Group.Point, PX: Commitment, PY: Commitment, QX: Commitment, QY: Commitment, RX: Commitment, RY: Commitment): Promise<PointAddProof>;
export declare function verifyPointAdd(params: PedersenParams, PX: Group.Point, PY: Group.Point, QX: Group.Point, QY: Group.Point, RX: Group.Point, RY: Group.Point, pi: PointAddProof): Promise<boolean>;
export declare function aggregatePointAdd(params: PedersenParams, PX: Group.Point, PY: Group.Point, QX: Group.Point, QY: Group.Point, RX: Group.Point, RY: Group.Point, pi: PointAddProof, multi: MultiMult): Promise<boolean>;
//# sourceMappingURL=pointAdd.d.ts.map