import type { Field } from '../field.js'; import type { InferProvable } from './struct.js'; import { ProvableType, ToProvable } from './provable-intf.js'; import { From } from '../../../bindings/lib/provable-generic.js'; import { TupleN } from '../../util/types.js'; export { witness, witnessAsync, witnessFields }; declare function witness, T extends From> = From>>(type: A, compute: () => T): InferProvable>; declare function witnessAsync, T extends From> = From>>(type: A, compute: () => Promise): Promise; declare function witnessFields TupleN>(size: N, compute: C): TupleN;