The private computation contract is a CosmWasm smart contract running on Secret Network. It implements the following interface:
Init Message:
/// Include parameters to link this contract with the Private Gateway
pub struct State {
pub gateway_address: HumanAddr,
pub gateway_hash: String,
pub gateway_key: Binary,
}
Handle Message:
/// See Private Gateway docs for PrivContractHandleMsg definition.
pub enum HandleMsg {
Input { message: PrivContractHandleMsg },
}
Handle Response:
/// Define a struct for each handle message response. Example:
pub struct ScoreResponse {
pub name: String,
pub result: String,
}
Data Structs:
/// Define a struct for whatever parameters the contract needs. Example:
pub struct Input {
/// User Ethereum address.
pub address: String,
/// User name (optional).
pub name: Option<String>,
/// Arbitary data (per use case).
pub field_1: u32,
pub field_2: u32,
pub field_3: u32,
}