import { PrivateKey, PublicKey } from 'o1js'; export { randomAccounts }; /** * Predefined accounts keys, labeled by the input strings. Useful for testing/debugging with consistent keys. */ function randomAccounts( ...names: [K, ...K[]] ): { keys: Record; addresses: Record } { let base58Keys = Array(names.length) .fill('') .map(() => PrivateKey.random().toBase58()); let keys = Object.fromEntries( names.map((name, idx) => [name, PrivateKey.fromBase58(base58Keys[idx])]) ) as Record; let addresses = Object.fromEntries( names.map((name) => [name, keys[name].toPublicKey()]) ) as Record; return { keys, addresses }; }