/// import { IXyoSignature, IXyoPublicKey } from '@xyo-network/signing'; import { IXyoSerializableObject } from '@xyo-network/serialization'; import { IXyoHash } from '@xyo-network/hashing'; /** * A payload encapsulates the meta data being shared between parties * in a bound witness. * * It is broken up between signed and unsigned portions */ export interface IXyoPayload { readonly heuristics: IXyoSerializableObject[]; readonly metadata: IXyoSerializableObject[]; } export interface IXyoKeySet extends IXyoSerializableObject { readonly keys: IXyoPublicKey[]; } export interface IXyoSignatureSet extends IXyoSerializableObject { readonly signatures: IXyoSignature[]; } export interface IXyoFetter extends IXyoSerializableObject { readonly keySet: IXyoKeySet; readonly heuristics: IXyoSerializableObject[]; } export interface IXyoFetterSet extends IXyoSerializableObject { readonly fetters: IXyoFetter[]; } export interface IXyoWitness extends IXyoSerializableObject { readonly signatureSet: IXyoSignatureSet; readonly metadata: IXyoSerializableObject[]; } export interface IXyoWitnessSet extends IXyoSerializableObject { readonly witnesses: IXyoWitness[]; } export declare type FetterOrWitness = IXyoFetter | IXyoWitness; export interface IXyoBoundWitnessFragment extends IXyoSerializableObject { fetterWitnesses: FetterOrWitness[]; } export interface IXyoPayloadDataExtractionService { getIndex(payload: IXyoPayload): number | undefined; getPreviousHash(payload: IXyoPayload): IXyoHash | undefined; getNextPublicKey(payload: IXyoPayload): IXyoPublicKey | undefined; getBridgeHashSet(payload: IXyoPayload): IXyoHash[] | undefined; getBridgeBlockSet(payload: IXyoPayload): IXyoBoundWitness[] | undefined; findElementInSignedPayload(payload: IXyoPayload, schemaObjectId: number): T | undefined; findElementInUnsignedPayload(payload: IXyoPayload, schemaObjectId: number): T | undefined; } export interface IXyoBoundWitnessParty { partyIndex: number; keySet: IXyoKeySet; signatureSet: IXyoSignatureSet; heuristics: IXyoSerializableObject[]; metadata: IXyoSerializableObject[]; getHeuristic(schemaObjectId: number): T | undefined; getMetaDataItem(schemaObjectId: number): T | undefined; } export interface IXyoBoundWitness extends IXyoSerializableObject, IXyoBoundWitnessFragment { readonly publicKeys: IXyoKeySet[]; readonly signatures: IXyoSignatureSet[]; readonly heuristics: IXyoSerializableObject[][]; readonly metadata: IXyoSerializableObject[][]; readonly numberOfParties: number; readonly parties: IXyoBoundWitnessParty[]; getSigningData(): Buffer; getHeuristicFromParty(partyIndex: number, schemaObjectId: number): T | undefined; getMetaDataItemFromParty(partyIndex: number, schemaObjectId: number): T | undefined; stripMetaData(): IXyoBoundWitness; } //# sourceMappingURL=index.d.ts.map