@axiom-crypto/keystore-sdk
Version:
Keystore Rollup SDK
36 lines • 1.68 kB
TypeScript
import { Data, Hash, AuthInputs, AuthenticateTransactionResponse, GetAuthenticationStatusResponse, AuthenticateSponsoredTransactionResponse, GetSponsoredAuthenticationStatusResponse, SponsoredTransactionSponsoredAuthInputs } from "../../types";
export interface CustomSignatureProver<KD, AD, AI> {
vkey: Data;
keyDataEncoder: (fields: KD) => Data;
authDataEncoder: (fields: AD) => Data;
makeAuthInputs: (fields: AI) => AuthInputs;
}
export interface SignatureProverClientConfig<KD, AD, AI> extends CustomSignatureProver<KD, AD, AI> {
pollingIntervalMs?: number;
pollingRetries?: number;
url: string;
}
export interface SignatureProverClient<KD, AD, AI> extends SignatureProverClientConfig<KD, AD, AI> {
dataHash: (fields: KD) => Data;
waitForAuthentication: ({ hash }: {
hash: Hash;
}) => Promise<Data>;
waitForSponsoredAuthentication: ({ hash }: {
hash: Hash;
}) => Promise<Data>;
authenticateTransaction: ({ transaction, authInputs, }: {
transaction: Data;
authInputs: AuthInputs;
}) => Promise<AuthenticateTransactionResponse>;
getAuthenticationStatus: ({ requestHash, }: {
requestHash: Hash;
}) => Promise<GetAuthenticationStatusResponse>;
authenticateSponsoredTransaction: ({ transaction, sponsoredAuthInputs, }: {
transaction: Data;
sponsoredAuthInputs: SponsoredTransactionSponsoredAuthInputs;
}) => Promise<AuthenticateSponsoredTransactionResponse>;
getSponsoredAuthenticationStatus: ({ requestHash, }: {
requestHash: Hash;
}) => Promise<GetSponsoredAuthenticationStatusResponse>;
}
//# sourceMappingURL=signatureProver.d.ts.map