mirror of
https://github.com/aljazceru/nutshell.git
synced 2026-01-09 19:54:20 +01:00
uses base models for almost everything
This commit is contained in:
25
core/base.py
25
core/base.py
@@ -70,16 +70,37 @@ class Invoice(BaseModel):
|
||||
)
|
||||
|
||||
|
||||
class MintPayload(BaseModel):
|
||||
class BlindedMessage(BaseModel):
|
||||
amount: int
|
||||
B_: BasePoint
|
||||
|
||||
|
||||
class BlindedSignature(BaseModel):
|
||||
amount: int
|
||||
C_: BasePoint
|
||||
|
||||
@classmethod
|
||||
def from_dict(cls, d: dict):
|
||||
return cls(
|
||||
amount=d["amount"],
|
||||
C_=dict(
|
||||
x=int(d["C_"]["x"]),
|
||||
y=int(d["C_"]["y"]),
|
||||
),
|
||||
)
|
||||
|
||||
|
||||
class MintPayloads(BaseModel):
|
||||
payloads: List[MintPayload] = []
|
||||
blinded_messages: List[BlindedMessage] = []
|
||||
|
||||
|
||||
class SplitPayload(BaseModel):
|
||||
proofs: List[Proof]
|
||||
amount: int
|
||||
output_data: MintPayloads
|
||||
|
||||
|
||||
class MeltPayload(BaseModel):
|
||||
proofs: List[Proof]
|
||||
amount: int
|
||||
invoice: str
|
||||
|
||||
Reference in New Issue
Block a user