zwallet/idl/data.fbs

271 lines
3.5 KiB
Plaintext

namespace fb;
table Account {
id:uint32;
name:string;
key_type:uint8;
balance:uint64;
}
table AccountVec {
accounts:[Account];
}
table Balance {
shielded:uint64;
unconfirmed_spent:uint64;
balance:uint64;
under_confirmed:uint64;
excluded:uint64;
sapling:uint64;
orchard:uint64;
}
table Height {
height:uint32;
timestamp:uint32;
}
table ShieldedNote {
id:uint32;
height:uint32;
value:uint64;
timestamp:uint32;
orchard:bool;
excluded:bool;
spent:bool;
}
table ShieldedNoteVec {
notes:[ShieldedNote];
}
table ShieldedTx {
id:uint32;
tx_id:string;
height:uint32;
short_tx_id:string;
timestamp:uint32;
name:string;
value:int64;
address:string;
memo:string;
}
table ShieldedTxVec {
txs:[ShieldedTx];
}
table PlainTx {
id:uint32;
tx_id:string;
height:uint32;
timestamp:uint32;
value:int64;
}
table PlainTxVec {
txs:[PlainTx];
}
table PlainNote {
id:uint32;
tx_id:string;
height:uint32;
timestamp:uint32;
vout:uint32;
value:uint64;
}
table PlainNoteVec {
notes:[PlainNote];
}
table BTCInput {
tx_id:string;
vout:uint32;
value:uint64;
}
table BTCOutput {
script_pubkey:string;
value:uint64;
}
table BTCTx {
txins:[BTCInput];
txouts:[BTCOutput];
fee:uint64;
}
table Message {
id_msg:uint32;
id_tx:uint32;
height:uint32;
timestamp:uint32;
from:string;
to:string;
subject:string;
body:string;
read:bool;
incoming:bool;
}
table MessageVec {
messages:[Message];
}
table PrevNext {
prev:uint32;
next:uint32;
}
table SendTemplate {
id:uint32;
title:string;
address:string;
amount:uint64;
fiat_amount:double;
fee_included:bool;
fiat:string;
include_reply_to:bool;
subject:string;
body:string;
}
table SendTemplateVec {
templates:[SendTemplate];
}
table Contact {
id:uint32;
name:string;
address:string;
}
table ContactVec {
contacts:[Contact];
}
table TxTimeValue {
timestamp:uint32;
value:uint64;
}
table TxTimeValueVec {
values:[TxTimeValue];
}
table Quote {
timestamp:uint32;
price:double;
}
table QuoteVec {
values:[Quote];
}
table Spending {
recipient:string;
amount:uint64;
}
table SpendingVec {
values:[Spending];
}
table AddressBalance {
index:uint32;
address:string;
balance:uint64;
}
table AddressBalanceVec {
values:[AddressBalance];
}
table Checkpoint {
height:uint32;
timestamp:uint32;
}
table CheckpointVec {
values:[Checkpoint];
}
table Backup {
name:string;
seed:string;
index:uint32;
sk:string;
fvk:string;
uvk:string;
}
table RaptorQDrops {
drops:[string];
}
table AGEKeys {
sk:string;
pk:string;
}
table Servers {
urls:[string];
}
table Progress {
height:uint32;
trial_decryptions:uint64;
downloaded:uint64;
}
table KeyPack {
t_addr:string;
t_key:string;
z_addr:string;
z_key:string;
}
table Recipient {
address:string;
amount:uint64;
fee_included:bool;
reply_to:bool;
subject:string;
memo:string;
max_amount_per_note:uint64;
}
table Recipients {
values:[Recipient];
}
table RecipientSummary {
amount:uint64;
address:string;
}
table UnsignedTxSummary {
recipients:[RecipientSummary];
}
table TxOutput {
id:uint32;
address:string;
amount:uint64;
pool:uint8;
}
table TxReport {
outputs:[TxOutput];
transparent:uint64;
sapling:uint64;
orchard:uint64;
net_sapling:int64;
net_orchard:int64;
fee:uint64;
privacy_level:uint8;
}