UNPKG

@mysten/sui

Version:

Sui TypeScript API(Work in Progress)

69 lines (68 loc) 2.32 kB
import { PublicKey } from '../cryptography/publickey.js'; import type { PublicKeyInitData } from '../cryptography/publickey.js'; import { SuiGraphQLClient } from '../graphql/client.js'; /** * A zkLogin public identifier */ export declare class ZkLoginPublicIdentifier extends PublicKey { #private; /** * Create a new ZkLoginPublicIdentifier object * @param value zkLogin public identifier as buffer or base-64 encoded string */ constructor(value: PublicKeyInitData, { client }?: { client?: SuiGraphQLClient; }); /** * Checks if two zkLogin public identifiers are equal */ equals(publicKey: ZkLoginPublicIdentifier): boolean; /** * Return the byte array representation of the zkLogin public identifier */ toRawBytes(): Uint8Array; /** * Return the Sui address associated with this ZkLogin public identifier */ flag(): number; /** * Verifies that the signature is valid for for the provided message */ verify(_message: Uint8Array, _signature: Uint8Array | string): Promise<boolean>; /** * Verifies that the signature is valid for for the provided PersonalMessage */ verifyPersonalMessage(message: Uint8Array, signature: Uint8Array | string): Promise<boolean>; /** * Verifies that the signature is valid for for the provided Transaction */ verifyTransaction(transaction: Uint8Array, signature: Uint8Array | string): Promise<boolean>; } export declare function toZkLoginPublicIdentifier(addressSeed: bigint, iss: string, options?: { client?: SuiGraphQLClient; }): ZkLoginPublicIdentifier; export declare function parseSerializedZkLoginSignature(signature: Uint8Array | string): { serializedSignature: string; signatureScheme: "ZkLogin"; zkLogin: { inputs: { proofPoints: { a: string[]; b: string[][]; c: string[]; }; issBase64Details: { value: string; indexMod4: number; }; headerBase64: string; addressSeed: string; }; maxEpoch: string; userSignature: number[]; iss: string; addressSeed: bigint; }; signature: Uint8Array; publicKey: Uint8Array; };