From 6aeece49cb4caff918e0f9cf7c00ae7098df62ff Mon Sep 17 00:00:00 2001 From: getlarge Date: Thu, 11 Mar 2021 13:05:14 +0100 Subject: [PATCH] fix: improve typedefs Signed-off-by: getlarge --- types/baseRequest.d.ts | 2 +- types/connection.d.ts | 9 ++++----- types/request.d.ts | 4 ++-- types/transaction.d.ts | 28 ++++++++++++++++++++++------ types/transport.d.ts | 2 +- types/utils/ccJsonify.d.ts | 2 +- 6 files changed, 31 insertions(+), 16 deletions(-) diff --git a/types/baseRequest.d.ts b/types/baseRequest.d.ts index 177506d..b7cd36b 100644 --- a/types/baseRequest.d.ts +++ b/types/baseRequest.d.ts @@ -26,6 +26,6 @@ declare function handleResponse(res: Response): Response; export default function baseRequest( url: string, - config: RequestConfig = {}, + config: RequestConfig, requestTimeout?: number ): Promise; diff --git a/types/connection.d.ts b/types/connection.d.ts index 336f8f4..9dccd0c 100644 --- a/types/connection.d.ts +++ b/types/connection.d.ts @@ -12,7 +12,6 @@ import type { TransactionCommon, } from './transaction'; -declare const HEADER_BLACKLIST = ['content-type']; declare const DEFAULT_NODE = 'http://localhost:9984/api/v1/'; declare const DEFAULT_TIMEOUT = 20000; // The default value is 20 seconds @@ -88,7 +87,7 @@ export default class Connection { constructor( nodes: string | InputNode | (string | InputNode)[], - headers: Record = {}, + headers?: Record, timeout?: number ); @@ -97,11 +96,11 @@ export default class Connection { headers: Record ): Node; - static getApiUrls(endpoint: E): EndpointsUrl[E]; + static getApiUrls(endpoint: E): EndpointsUrl[E]; - private _req>( + private _req>( path: EndpointsUrl[E], - options: RequestConfig = {} + options: RequestConfig ): Promise; getBlock( diff --git a/types/request.d.ts b/types/request.d.ts index 9f4a649..120de06 100644 --- a/types/request.d.ts +++ b/types/request.d.ts @@ -17,9 +17,9 @@ export default class Request { constructor(node: Node); - async request>( + request>( urlPath: string, - config: RequestConfig = {}, + config?: RequestConfig, timeout?: number, maxBackoffTime?: number ): Promise; diff --git a/types/transaction.d.ts b/types/transaction.d.ts index ff0011e..7d1c9bc 100644 --- a/types/transaction.d.ts +++ b/types/transaction.d.ts @@ -96,13 +96,23 @@ interface TxTemplate { version: '2.0'; } -declare function DelegateSignFunction( +declare type DelegateSignFunction = ( serializedTransaction: string, input: TransactionInput, index?: number -): string; +) => string; + +declare type DelegateSignFunctionAsync = ( + serializedTransaction: string, + input: TransactionInput, + index?: number +) => Promise; export default class Transaction { + static serializeTransactionIntoCanonicalString( + transaction: TransactionCommon + ): string; + static serializeTransactionIntoCanonicalString( transaction: CreateTransaction | TransferTransaction ): string; @@ -118,7 +128,7 @@ export default class Transaction { static makeEd25519Condition( publicKey: string, - json: boolean = true + json?: boolean ): Ed25519Sha256 | Ed25519Sha256JSONCondition; static makeSha256Condition(preimage: string): PreimageSha256JSONCondition; @@ -132,7 +142,7 @@ export default class Transaction { static makeSha256Condition( preimage: string, - json: boolean = true + json?: boolean ): PreimageSha256 | PreimageSha256JSONCondition; static makeThresholdCondition( @@ -155,7 +165,7 @@ export default class Transaction { static makeThresholdCondition( threshold: number, subconditions: (string | Fulfillment)[], - json: boolean = true + json?: boolean ): ThresholdSha256 | ThresholdSha256JSONCondition; static makeInputTemplate( @@ -169,7 +179,7 @@ export default class Transaction { | PreimageSha256JSONCondition | ThresholdSha256JSONCondition | Ed25519Sha256JSONCondition, - amount: string = '1' + amount?: string ): TransactionOutput; static makeTransactionTemplate(): TxTemplate; @@ -207,8 +217,14 @@ export default class Transaction { ...privateKeys: string[] ): TransactionCommonSigned; + static delegateSignTransaction( transaction: TransactionCommon, signFn: DelegateSignFunction ): TransactionCommonSigned; + + static delegateSignTransactionAsync( + transaction: TransactionCommon, + signFn: DelegateSignFunctionAsync + ): Promise>; } diff --git a/types/transport.d.ts b/types/transport.d.ts index 3119057..8aca29c 100644 --- a/types/transport.d.ts +++ b/types/transport.d.ts @@ -14,7 +14,7 @@ export default class Transport { pickConnection(): Request; - async forwardRequest>( + forwardRequest>( path: string, config: RequestConfig ): Promise; diff --git a/types/utils/ccJsonify.d.ts b/types/utils/ccJsonify.d.ts index 2e6cbe0..69e23cd 100644 --- a/types/utils/ccJsonify.d.ts +++ b/types/utils/ccJsonify.d.ts @@ -8,7 +8,7 @@ import type { PreimageSha256, ThresholdSha256, } from 'crypto-conditions'; -import type { TypeId } from 'crypto-conditions/types/types'; +import type { TypeId, TypeName } from 'crypto-conditions/types/types'; interface BaseJSONCondition { details: {