Module: models

class x3dh.models.BaseStateModel(**data)[source]

Bases: BaseModel

The model representing the internal state of a BaseState.

Parameters:
version: str
identity_key: IdentityKeyPairModel
signed_pre_key: SignedPreKeyPairModel
old_signed_pre_key: SignedPreKeyPairModel | None
pre_keys: FrozenSet[Annotated[bytes, PlainValidator(func=_json_bytes_decoder, json_schema_input_type=Any), PlainSerializer(func=_json_bytes_encoder, return_type=PydanticUndefined, when_used=always)]]
class x3dh.models.IdentityKeyPairModel(**data)[source]

Bases: BaseModel

The model representing the internal state of an IdentityKeyPair.

Parameters:
version: str
secret: Annotated[bytes, PlainValidator(func=_json_bytes_decoder, json_schema_input_type=Any), PlainSerializer(func=_json_bytes_encoder, return_type=PydanticUndefined, when_used=always)]
secret_type: SecretType
class x3dh.models.SignedPreKeyPairModel(**data)[source]

Bases: BaseModel

The model representing the internal state of a SignedPreKeyPair.

Parameters:
  • version (str)

  • priv (Annotated[bytes, PlainValidator(func=~x3dh.models._json_bytes_decoder, json_schema_input_type=~typing.Any), PlainSerializer(func=~x3dh.models._json_bytes_encoder, return_type=PydanticUndefined, when_used=always)])

  • sig (Annotated[bytes, PlainValidator(func=~x3dh.models._json_bytes_decoder, json_schema_input_type=~typing.Any), PlainSerializer(func=~x3dh.models._json_bytes_encoder, return_type=PydanticUndefined, when_used=always)])

  • timestamp (int)

version: str
priv: Annotated[bytes, PlainValidator(func=_json_bytes_decoder, json_schema_input_type=Any), PlainSerializer(func=_json_bytes_encoder, return_type=PydanticUndefined, when_used=always)]
sig: Annotated[bytes, PlainValidator(func=_json_bytes_decoder, json_schema_input_type=Any), PlainSerializer(func=_json_bytes_encoder, return_type=PydanticUndefined, when_used=always)]
timestamp: int