This commit is contained in:
callebtc
2022-09-13 16:34:45 +03:00
parent 5eac5685e1
commit c90c5d40e7

42
core/base.py Normal file
View File

@@ -0,0 +1,42 @@
from pydantic import BaseModel
from typing import List
from sqlite3 import Row
class BasePoint(BaseModel):
"""Named BasePoint because it conflicts with ecc.curve.Point"""
x: int
y: int
class Proof(BaseModel):
amount: int
C: BasePoint
secret: str
@classmethod
def from_row(cls, row: Row):
return dict(
amount=row[0],
C=dict(
x=int(row[1]),
y=int(row[2]),
),
secret=row[3],
)
class MintPayload(BaseModel):
amount: int
B_: BasePoint
class MintPayloads(BaseModel):
payloads: List[MintPayload] = []
class SplitPayload(BaseModel):
proofs: List[Proof]
amount: int
output_data: MintPayloads