org.sigilaris.core.application.feature.accounts.domain

Members list

Type members

Classlikes

enum Account

Account identifier - can be either Named or Unnamed.

Account identifier - can be either Named or Unnamed.

Named accounts use UTF-8 strings as identifiers and support key recovery. Unnamed accounts use KeyId20 (20-byte hash) and have no recovery mechanism.

Attributes

Companion
object
Source
AccountsTypes.scala
Supertypes
trait Enum
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
object Account

Companion for Account, providing codec instances and equality.

Companion for Account, providing codec instances and equality.

Attributes

Companion
enum
Source
AccountsTypes.scala
Supertypes
trait Sum
trait Mirror
class Object
trait Matchable
class Any
Self type
Account.type
final case class AccountInfo(guardian: Option[Account], nonce: AccountNonce)

Account information stored on-chain.

Account information stored on-chain.

Value parameters

guardian

optional guardian account for key recovery

nonce

sequential number for replay attack prevention (increments by exactly 1)

Attributes

Companion
object
Source
AccountsTypes.scala
Supertypes
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
object AccountInfo

Companion for AccountInfo, providing equality.

Companion for AccountInfo, providing equality.

Attributes

Companion
class
Source
AccountsTypes.scala
Supertypes
trait Product
trait Mirror
class Object
trait Matchable
class Any
Self type

Companion for AccountNonce.

Companion for AccountNonce.

Attributes

Source
AccountsTypes.scala
Supertypes
class Object
trait Matchable
class Any
Self type

Companion for AccountsEvent, providing construction and extraction.

Companion for AccountsEvent, providing construction and extraction.

Attributes

Source
AccountsBranding.scala
Supertypes
class Object
trait Matchable
class Any
Self type

Companion for AccountsResult, providing construction and extraction.

Companion for AccountsResult, providing construction and extraction.

Attributes

Source
AccountsBranding.scala
Supertypes
class Object
trait Matchable
class Any
Self type

Companion for KeyId20, providing construction, codec instances, and equality.

Companion for KeyId20, providing construction, codec instances, and equality.

Attributes

Source
AccountsTypes.scala
Supertypes
class Object
trait Matchable
class Any
Self type
KeyId20.type
final case class KeyInfo(addedAt: Instant, expiresAt: Option[Instant], description: Utf8)

Key registration information for Named accounts.

Key registration information for Named accounts.

Value parameters

addedAt

timestamp when the key was added

description

user-provided description of the key

expiresAt

optional expiration timestamp

Attributes

Companion
object
Source
AccountsTypes.scala
Supertypes
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
object KeyInfo

Companion for KeyInfo, providing equality.

Companion for KeyInfo, providing equality.

Attributes

Companion
class
Source
AccountsTypes.scala
Supertypes
trait Product
trait Mirror
class Object
trait Matchable
class Any
Self type
KeyInfo.type

Companion for NonEmptyKeyIds.

Companion for NonEmptyKeyIds.

Attributes

Source
AccountsTypes.scala
Supertypes
class Object
trait Matchable
class Any
Self type

Types

opaque type AccountNonce

Account nonce stored on-chain and used for replay protection.

Account nonce stored on-chain and used for replay protection.

Attributes

Source
AccountsTypes.scala
opaque type AccountsEvent[+A]

Branded event wrapper for the Accounts module, preventing cross-module event mixing.

Branded event wrapper for the Accounts module, preventing cross-module event mixing.

Type parameters

A

the underlying event type

Attributes

Source
AccountsBranding.scala
opaque type AccountsResult[+A]

Branded result wrapper for the Accounts module, preventing cross-module result mixing.

Branded result wrapper for the Accounts module, preventing cross-module result mixing.

Type parameters

A

the underlying result type

Attributes

Source
AccountsBranding.scala
opaque type KeyId20

Public key identifier (20 bytes).

Public key identifier (20 bytes).

Derived from public key using Ethereum's method: Keccak256(publicKey)[12..32] (last 20 bytes of hash)

Attributes

Source
AccountsTypes.scala

Non-empty map of key identifiers to descriptions used by AddKeyIds.

Non-empty map of key identifiers to descriptions used by AddKeyIds.

Attributes

Source
AccountsTypes.scala
opaque type NonEmptyKeyIds

Non-empty set of key identifiers used by RemoveKeyIds.

Non-empty set of key identifiers used by RemoveKeyIds.

Attributes

Source
AccountsTypes.scala