"""Inner structure of keylist message. Represents a single item in keylist.keys."""
from marshmallow import EXCLUDE, fields
from ......messaging.models.base import BaseModel, BaseModelSchema
from ......messaging.valid import DID_KEY
from ...normalization import normalize_from_public_key
[docs]class KeylistKey(BaseModel):
"""Inner structure of Keylist keys attribute."""
def __init__(
self,
*,
recipient_key: str = None,
action: str = None,
result: str = None,
**kwargs
):
"""
Initialize a KeylistKey instance.
Args:
recipient_key: The recipient verkey of the route
action: The requested action to perform
result: The result of the requested action
"""
super().__init__(**kwargs)
self.recipient_key = normalize_from_public_key(recipient_key)
[docs]class KeylistKeySchema(BaseModelSchema):
"""KeylistKey schema."""
recipient_key = fields.Str(required=True, **DID_KEY)