sui-svelte-wallet-kit
Version:
Svelte 5 wallet kit for Sui: connect wallets, manage accounts, SuiNS, balance, sign transactions/messages
52 lines (51 loc) • 1.5 kB
TypeScript
/**
* PasskeyService Types
* Defines interfaces and types for WebAuthn passkey operations
*/
export declare enum PasskeyErrorCode {
WEBAUTHN_NOT_SUPPORTED = "WEBAUTHN_NOT_SUPPORTED",
CREDENTIAL_CREATE_FAILED = "CREDENTIAL_CREATE_FAILED",
CREDENTIAL_GET_FAILED = "CREDENTIAL_GET_FAILED",
USER_CANCELLED = "USER_CANCELLED",
TIMEOUT = "TIMEOUT",
INVALID_CREDENTIAL = "INVALID_CREDENTIAL",
RPID_MISMATCH = "RPID_MISMATCH",
STORAGE_ERROR = "STORAGE_ERROR",
INVALID_CONFIG = "INVALID_CONFIG"
}
export declare class PasskeyError extends Error {
code: PasskeyErrorCode;
cause?: Error | undefined;
constructor(code: PasskeyErrorCode, message: string, cause?: Error | undefined);
}
export interface PasskeyCreateOptions {
rpId: string;
rpName: string;
userName: string;
userDisplayName?: string;
authenticatorAttachment?: 'platform' | 'cross-platform';
timeout?: number;
}
export interface PasskeyCredential {
credentialId: string;
publicKey: Uint8Array;
suiAddress: string;
createdAt: number;
}
export interface PasskeyAuthOptions {
rpId: string;
credentialId?: string;
timeout?: number;
}
export interface PasskeyAuthResult {
credentialId: string;
signature: Uint8Array;
authenticatorData: Uint8Array;
clientDataJSON: Uint8Array;
}
export interface PasskeyConfig {
rpId: string;
rpName: string;
authenticatorAttachment?: 'platform' | 'cross-platform';
timeout?: number;
}