@nori-zk/proof-conversion
Version:
Verifying zkVM proofs inside o1js circuits, to generate Mina compatible proof
96 lines (95 loc) • 2.18 kB
TypeScript
import { Field } from 'o1js';
import { Fp2, Fp12 } from '../towers/index.js';
declare const G2Affine_base: (new (value: {
x: Fp2;
y: Fp2;
}) => {
x: Fp2;
y: Fp2;
}) & {
_isStruct: true;
} & Omit<import("node_modules/o1js/dist/node/lib/provable/types/provable-intf.js").Provable<{
x: Fp2;
y: Fp2;
}, {
x: {
c0: bigint;
c1: bigint;
};
y: {
c0: bigint;
c1: bigint;
};
}>, "fromFields"> & {
fromFields: (fields: import("node_modules/o1js/dist/node/lib/provable/field.js").Field[]) => {
x: Fp2;
y: Fp2;
};
} & {
fromValue: (value: {
x: Fp2 | {
c0: bigint | import("o1js").AlmostForeignField;
c1: bigint | import("o1js").AlmostForeignField;
};
y: Fp2 | {
c0: bigint | import("o1js").AlmostForeignField;
c1: bigint | import("o1js").AlmostForeignField;
};
}) => {
x: Fp2;
y: Fp2;
};
toInput: (x: {
x: Fp2;
y: Fp2;
}) => {
fields?: Field[] | undefined;
packed?: [Field, number][] | undefined;
};
toJSON: (x: {
x: Fp2;
y: Fp2;
}) => {
x: {
c0: string;
c1: string;
};
y: {
c0: string;
c1: string;
};
};
fromJSON: (x: {
x: {
c0: string;
c1: string;
};
y: {
c0: string;
c1: string;
};
}) => {
x: Fp2;
y: Fp2;
};
empty: () => {
x: Fp2;
y: Fp2;
};
};
declare class G2Affine extends G2Affine_base {
equals(rhs: G2Affine): Field;
neg(): G2Affine;
computeLambdaSame(): Fp2;
computeLambdaDiff(rhs: G2Affine): Fp2;
computeMu(lambda: Fp2): Fp2;
add(rhs: G2Affine): G2Affine;
double_from_line(lambda: Fp2): G2Affine;
add_from_line(lambda: Fp2, rhs: G2Affine): G2Affine;
frobenius(): G2Affine;
frobFromInputs(g1: Fp2, g2: Fp2): G2Affine;
negative_frobenius(): G2Affine;
negFrobFromInputs(g1: Fp2, g2: Fp2): G2Affine;
hom(): [Fp12, Fp12];
}
export { G2Affine };