chia-agent
Version:
chia rpc/websocket client library
29 lines (28 loc) • 1.16 kB
TypeScript
import { bool, False, str, True } from "../types/_python_types_";
import { int } from "../../chia_rs/wheel/python/sized_ints";
import { TXConfigLoader, TXEndpointForCompat } from "../wallet/util/tx_config";
import { ConditionValidTimes } from "../wallet/conditions";
import { UnsignedTransaction } from "../wallet/signer_protocol";
import { ExtraCondition, TranslationLayerKey } from "./util";
export type TXEndpointRequestBase = {
wallet_type?: str;
extra_conditions?: ExtraCondition[];
push?: bool;
merge_spends?: bool;
sign?: bool;
translation?: TranslationLayerKey;
allow_unsynced?: bool;
} & TXConfigLoader & TXEndpointForCompat & Partial<ConditionValidTimes>;
export type TXEndpointRequest = TXEndpointRequestBase & ({
"CHIP-0029": True;
} | {
"CHIP-0029"?: False;
});
export type CHIP0029UnsignedTransaction<T extends TXEndpointRequest> = T extends {
"CHIP-0029": True;
} ? str[] : UnsignedTransaction[];
export type SyncStatus = 0 | 1 | 2 | 3;
export type TxeResp<Req extends TXEndpointRequest, Res> = {
unsigned_transactions: CHIP0029UnsignedTransaction<Req>;
sync_status: SyncStatus | int;
} & Res;