NAC_Blockchain/charter-std/acc/acc_redemption.ch

20 lines
863 B
Plaintext

// ACC-Redemption: 赎回协议
// NAC 原生协议 - Charter 语言定义
// UID: nac.acc.ACCRedemptionProtocol.v1
protocol ACCRedemptionProtocol {
// 注入赎回资金池
fn fund_redemption_pool(asset_id: Hash, amount_xtzh: u128, constitutional_receipt: Hash) -> Result<(), Error>;
// 提交赎回请求
fn request_redemption(
asset_id: Hash, redeemer: Address, amount: u128,
redemption_price_xtzh: u128, constitutional_receipt: Hash
) -> Result<Hash, Error>;
// 完成赎回(返回 XTZH 金额)
fn complete_redemption(redemption_id: Hash, constitutional_receipt: Hash) -> Result<u128, Error>;
// 查询赎回请求
fn get_request(redemption_id: Hash) -> Option<RedemptionRequest>;
// 控制赎回窗口
fn set_redemption_window(open: bool, constitutional_receipt: Hash) -> Result<(), Error>;
}