#[derive(Clone, Debug, PartialEq, Deserialize, Serialize, JsonSchema)]
pub struct QuotePrice {
pub price: Uint256,
pub block_timestamp: Timestamp,
pub block_height: u64,
}
#[derive(Clone, Debug, PartialEq, Deserialize, Serialize, JsonSchema)]
pub struct GetPriceResponse {
pub price: QuotePrice,
pub nonce: u64,
pub decimals: u64,
pub id: u64,
}
#[derive(Clone, Debug, PartialEq, Deserialize, Serialize, JsonSchema)]
pub struct GetPricesResponse {
pub prices: Vec<GetPriceResponse>,
}
pub fn example_get_prices(deps: Deps) -> StdResult<GetPricesResponse> {
let state = STATE.load(deps.storage)?;
let connect_addr = state.connect;
let pair_ids = vec!["BTC/USD".to_string(), "ETH/USD".to_string()];
deps.querier.query(&QueryRequest::Wasm(WasmQuery::Smart {
contract_addr: connect_addr.to_string(),
msg: to_json_binary(&connect_wasm::oracle::QueryMsg::GetPrices { pair_ids })?,
}))
}