provableFromClass
function provableFromClass<A, T, V, J>(Class: Constructor<T> & {
check?: (x: T) => void;
empty?: () => T;
}, typeObj: A): IsPure<A, Field> extends true ? ProvablePureExtended<T, V, J> : ProvableExtended<T, V, J>;
Defined in: lib/provable/types/provable-derivers.ts:85
Type Parameters
A
A extends NestedProvable
T
T extends any
V
V extends any
J
J extends
| null
| string
| number
| boolean
| {
[key: number]:
| null
| string
| number
| boolean
| { [x: number]: string | number | boolean | ... | (string | number | boolean | ... | (string | number | boolean | ... | (string | number | boolean | ... | (string | number | boolean | ... | (string | ... 5 more ... | null)[] | { ...; } | null)[] | { ...; } | null)[] | { ...; } | null)[] | { ...; } | null)[] | { ...; ...
| string | number | boolean | { [x: number]: string | number | boolean | ... | (string | number | boolean | ... | (string | number | boolean | ... | (string | number | boolean | ... | (string | ... 5 more ... | null)[] | { ...; } | null)[] | { ...; } | null)[] | { ...; } | null)[] | { ...; } | null; } | (string | ... ...[]
| {
[key: string]: string | number | boolean | { [x: number]: string | number | boolean | ... | (string | number | boolean | ... | (string | number | boolean | ... | (string | number | boolean | ... | (string | ... 5 more ... | null)[] | { ...; } | null)[] | { ...; } | null)[] | { ...; } | null)[] | { ...; } | null; } | (string | ... ...;
};
}
| {
[key: number]:
| null
| string
| number
| boolean
| {
[key: number]: string | number | boolean | { [x: number]: string | number | boolean | ... | (string | number | boolean | ... | (string | number | boolean | ... | (string | number | boolean | ... | (string | ... 5 more ... | null)[] | { ...; } | null)[] | { ...; } | null)[] | { ...; } | null)[] | { ...; } | null; } | (string | ... ...;
}
| string | number | boolean | { [x: number]: string | number | boolean | ... | (string | number | boolean | ... | (string | number | boolean | ... | (string | number | boolean | ... | (string | ... 5 more ... | null)[] | { ...; } | null)[] | { ...; } | null)[] | { ...; } | null)[] | { ...; } | null; } | (string | ... ...[]
| {
[key: string]: string | number | boolean | { [x: number]: string | number | boolean | ... | (string | number | boolean | ... | (string | number | boolean | ... | (string | number | boolean | ... | (string | ... 5 more ... | null)[] | { ...; } | null)[] | { ...; } | null)[] | { ...; } | null)[] | { ...; } | null; } | (string | ... ...;
};
}
| (
| null
| string
| number
| boolean
| {
[key: number]: string | number | boolean | { [x: number]: string | number | boolean | ... | (string | number | boolean | ... | (string | number | boolean | ... | (string | number | boolean | ... | (string | ... 5 more ... | null)[] | { ...; } | null)[] | { ...; } | null)[] | { ...; } | null)[] | { ...; } | null; } | (string | ... ...;
}
| (string | number | boolean | { [x: number]: string | number | boolean | ... | (string | number | boolean | ... | (string | number | boolean | ... | (string | number | boolean | ... | (string | ... 5 more ... | null)[] | { ...; } | null)[] | { ...; } | null)[] | { ...; } | null)[] | { ...; } | null; } | (string | ......
| {
[key: string]: string | number | boolean | { [x: number]: string | number | boolean | ... | (string | number | boolean | ... | (string | number | boolean | ... | (string | number | boolean | ... | (string | ... 5 more ... | null)[] | { ...; } | null)[] | { ...; } | null)[] | { ...; } | null)[] | { ...; } | null; } | (string | ... ...;
})[]
| {
[key: string]:
| null
| string
| number
| boolean
| {
[key: number]: string | number | boolean | { [x: number]: string | number | boolean | ... | (string | number | boolean | ... | (string | number | boolean | ... | (string | number | boolean | ... | (string | ... 5 more ... | null)[] | { ...; } | null)[] | { ...; } | null)[] | { ...; } | null)[] | { ...; } | null; } | (string | ... ...;
}
| string | number | boolean | { [x: number]: string | number | boolean | ... | (string | number | boolean | ... | (string | number | boolean | ... | (string | number | boolean | ... | (string | ... 5 more ... | null)[] | { ...; } | null)[] | { ...; } | null)[] | { ...; } | null)[] | { ...; } | null; } | (string | ... ...[]
| { [x: string]: string | number | boolean | { [x: number]: string | number | boolean | ... | (string | number | boolean | ... | (string | number | boolean | ... | (string | number | boolean | ... | (string | ... 5 more ... | null)[] | ... | null)[] | ... | null)[] | ... | null)[] | ... | null; } | (string | ... 5 mor...;
}
Parameters
Class
Constructor<T> & {
check?: (x: T) => void;
empty?: () => T;
}
typeObj
A
Returns
IsPure<A, Field> extends true ? ProvablePureExtended<T, V, J> : ProvableExtended<T, V, J>