fix: Appease flow

This commit is contained in:
Tyera Eulberg
2019-04-10 14:40:49 -07:00
committed by Michael Vines
parent 663f9c76d8
commit 507fac06ee
6 changed files with 44 additions and 41 deletions

View File

@ -126,11 +126,8 @@ const ConfirmTransactionRpcResult = jsonRpcResult('boolean');
const GetSignatureStatusRpcResult = jsonRpcResult(
struct.union([
'null',
struct.union([
struct({Ok: 'null'}),
struct({Err: 'string'})
])
])
struct.union([struct({Ok: 'null'}), struct({Err: 'object'})]),
]),
);
/**
@ -212,16 +209,22 @@ type ProgramAccountSubscriptionInfo = {
};
/**
* Possible signature status values
* Signature status: Success
*
* @typedef {string} SignatureStatus
* @typedef {Object} SignatureSuccess
*/
export type SignatureStatus =
| 'Confirmed'
| 'AccountInUse'
| 'SignatureNotFound'
| 'ProgramRuntimeError'
| 'GenericFailure';
export type SignatureSuccess = {|
Ok: null,
|};
/**
* Signature status: TransactionError
*
* @typedef {Object} TransactionError
*/
export type TransactionError = {|
Err: Object,
|};
/**
* A connection to a fullnode JSON RPC endpoint
@ -338,7 +341,7 @@ export class Connection {
*/
async getSignatureStatus(
signature: TransactionSignature,
): Promise<SignatureStatus> {
): Promise<SignatureSuccess | TransactionError | null> {
const unsafeRes = await this._rpcRequest('getSignatureStatus', [signature]);
const res = GetSignatureStatusRpcResult(unsafeRes);
if (res.error) {