@polkadot/api-base 17.0.1 → 17.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,4 +1,4 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.packageInfo = void 0;
4
- exports.packageInfo = { name: '@polkadot/api-base', path: typeof __dirname === 'string' ? __dirname : 'auto', type: 'cjs', version: '17.0.1' };
4
+ exports.packageInfo = { name: '@polkadot/api-base', path: typeof __dirname === 'string' ? __dirname : 'auto', type: 'cjs', version: '17.0.2' };
@@ -4,6 +4,10 @@ import type { Hash } from '@polkadot/types/interfaces';
4
4
  import type { StorageEntry } from '@polkadot/types/primitive/types';
5
5
  import type { AnyFunction, AnyTuple, Callback, Codec, IStorageKey } from '@polkadot/types/types';
6
6
  import type { ApiTypes, DropLast, EmptyBase, MethodResult, PaginationOptions, PromiseOrObs, ReturnCodec, UnsubscribePromise } from './base.js';
7
+ declare const storageEntryResult: unique symbol;
8
+ interface StorageEntryResult<R extends Codec> {
9
+ readonly [storageEntryResult]?: R;
10
+ }
7
11
  type StorageEntryObservableMulti<R extends Codec = Codec> = <T extends Codec = R>(args: unknown[]) => Observable<T[]>;
8
12
  interface StorageEntryPromiseMulti<R extends Codec = Codec> {
9
13
  <T extends Codec = R>(args: unknown[]): Promise<T[]>;
@@ -57,18 +61,27 @@ export interface StorageEntryBaseAt<ApiType extends ApiTypes, F extends AnyFunct
57
61
  }
58
62
  export type QueryableModuleStorage<ApiType extends ApiTypes> = Record<string, QueryableStorageEntry<ApiType, AnyTuple>>;
59
63
  export type QueryableModuleStorageAt<ApiType extends ApiTypes> = Record<string, QueryableStorageEntryAt<ApiType, AnyTuple>>;
60
- export type QueryableStorageMultiArg<ApiType extends ApiTypes> = QueryableStorageEntry<ApiType> | [
61
- QueryableStorageEntry<ApiType>,
62
- ...unknown[]
63
- ];
64
- export type QueryableStorageMultiBase<ApiType extends ApiTypes> = <T extends Codec[]>(calls: QueryableStorageMultiArg<ApiType>[]) => Observable<T>;
64
+ export type QueryableStorageMultiArg<ApiType extends ApiTypes> = QueryableStorageEntry<ApiType> | readonly [QueryableStorageEntry<ApiType>, ...unknown[]];
65
+ type QueryableStorageMultiCallResult<Call> = Call extends readonly [infer Entry, ...unknown[]] ? Entry extends StorageEntryResult<infer R> ? R : Codec : Call extends StorageEntryResult<infer R> ? R : Codec;
66
+ type QueryableStorageMultiResult<ApiType extends ApiTypes, Calls extends readonly QueryableStorageMultiArg<ApiType>[]> = {
67
+ -readonly [Index in keyof Calls]: QueryableStorageMultiCallResult<Calls[Index]>;
68
+ };
69
+ type QueryableStorageMultiReturn<ApiType extends ApiTypes, T extends Codec[], Calls extends readonly QueryableStorageMultiArg<ApiType>[]> = [
70
+ T
71
+ ] extends [never] ? QueryableStorageMultiResult<ApiType, Calls> : T;
72
+ export interface QueryableStorageMultiBase<ApiType extends ApiTypes> {
73
+ <T extends Codec[] = never, Calls extends readonly QueryableStorageMultiArg<ApiType>[] = readonly QueryableStorageMultiArg<ApiType>[]>(calls: readonly [...Calls]): Observable<QueryableStorageMultiReturn<ApiType, T, Calls>>;
74
+ <T extends Codec[] = Codec[]>(calls: readonly QueryableStorageMultiArg<ApiType>[]): Observable<T>;
75
+ }
65
76
  export interface QueryableStorageMultiPromise<ApiType extends ApiTypes> {
66
- <T extends Codec[]>(calls: QueryableStorageMultiArg<ApiType>[], callback: Callback<T>): UnsubscribePromise;
67
- <T extends Codec[]>(calls: QueryableStorageMultiArg<ApiType>[]): Promise<T>;
77
+ <T extends Codec[] = never, Calls extends readonly QueryableStorageMultiArg<ApiType>[] = readonly QueryableStorageMultiArg<ApiType>[]>(calls: readonly [...Calls], callback: Callback<QueryableStorageMultiReturn<ApiType, T, Calls>>): UnsubscribePromise;
78
+ <T extends Codec[] = Codec[]>(calls: readonly QueryableStorageMultiArg<ApiType>[], callback: Callback<T>): UnsubscribePromise;
79
+ <T extends Codec[] = never, Calls extends readonly QueryableStorageMultiArg<ApiType>[] = readonly QueryableStorageMultiArg<ApiType>[]>(calls: readonly [...Calls]): Promise<QueryableStorageMultiReturn<ApiType, T, Calls>>;
80
+ <T extends Codec[] = Codec[]>(calls: readonly QueryableStorageMultiArg<ApiType>[]): Promise<T>;
68
81
  }
69
82
  export type QueryableStorageMulti<ApiType extends ApiTypes> = ApiType extends 'rxjs' ? QueryableStorageMultiBase<ApiType> : QueryableStorageMultiPromise<ApiType>;
70
- export type AugmentedQuery<ApiType extends ApiTypes, F extends AnyFunction, A extends AnyTuple = AnyTuple> = MethodResult<ApiType, F> & StorageEntryBase<ApiType, F, A>;
71
- export type AugmentedQueryAt<ApiType extends ApiTypes, F extends AnyFunction, A extends AnyTuple = AnyTuple> = MethodResult<ApiType, F> & StorageEntryBaseAt<ApiType, F, A>;
83
+ export type AugmentedQuery<ApiType extends ApiTypes, F extends AnyFunction, A extends AnyTuple = AnyTuple> = MethodResult<ApiType, F> & StorageEntryBase<ApiType, F, A> & StorageEntryResult<ReturnCodec<F>>;
84
+ export type AugmentedQueryAt<ApiType extends ApiTypes, F extends AnyFunction, A extends AnyTuple = AnyTuple> = MethodResult<ApiType, F> & StorageEntryBaseAt<ApiType, F, A> & StorageEntryResult<ReturnCodec<F>>;
72
85
  export type AugmentedQueryDoubleMap<ApiType extends ApiTypes, F extends AnyFunction, A extends AnyTuple = AnyTuple> = AugmentedQuery<ApiType, F, A>;
73
86
  export interface AugmentedQueries<ApiType extends ApiTypes> extends EmptyBase<ApiType> {
74
87
  }
package/package.json CHANGED
@@ -18,7 +18,7 @@
18
18
  "./cjs/packageDetect.js"
19
19
  ],
20
20
  "type": "module",
21
- "version": "17.0.1",
21
+ "version": "17.0.2",
22
22
  "main": "./cjs/index.js",
23
23
  "module": "./index.js",
24
24
  "types": "./index.d.ts",
@@ -255,8 +255,8 @@
255
255
  }
256
256
  },
257
257
  "dependencies": {
258
- "@polkadot/rpc-core": "17.0.1",
259
- "@polkadot/types": "17.0.1",
258
+ "@polkadot/rpc-core": "17.0.2",
259
+ "@polkadot/types": "17.0.2",
260
260
  "@polkadot/util": "^14.0.3",
261
261
  "rxjs": "^7.8.1",
262
262
  "tslib": "^2.8.1"
package/packageInfo.js CHANGED
@@ -1 +1 @@
1
- export const packageInfo = { name: '@polkadot/api-base', path: (import.meta && import.meta.url) ? new URL(import.meta.url).pathname.substring(0, new URL(import.meta.url).pathname.lastIndexOf('/') + 1) : 'auto', type: 'esm', version: '17.0.1' };
1
+ export const packageInfo = { name: '@polkadot/api-base', path: (import.meta && import.meta.url) ? new URL(import.meta.url).pathname.substring(0, new URL(import.meta.url).pathname.lastIndexOf('/') + 1) : 'auto', type: 'esm', version: '17.0.2' };
@@ -4,6 +4,10 @@ import type { Hash } from '@polkadot/types/interfaces';
4
4
  import type { StorageEntry } from '@polkadot/types/primitive/types';
5
5
  import type { AnyFunction, AnyTuple, Callback, Codec, IStorageKey } from '@polkadot/types/types';
6
6
  import type { ApiTypes, DropLast, EmptyBase, MethodResult, PaginationOptions, PromiseOrObs, ReturnCodec, UnsubscribePromise } from './base.js';
7
+ declare const storageEntryResult: unique symbol;
8
+ interface StorageEntryResult<R extends Codec> {
9
+ readonly [storageEntryResult]?: R;
10
+ }
7
11
  type StorageEntryObservableMulti<R extends Codec = Codec> = <T extends Codec = R>(args: unknown[]) => Observable<T[]>;
8
12
  interface StorageEntryPromiseMulti<R extends Codec = Codec> {
9
13
  <T extends Codec = R>(args: unknown[]): Promise<T[]>;
@@ -57,18 +61,27 @@ export interface StorageEntryBaseAt<ApiType extends ApiTypes, F extends AnyFunct
57
61
  }
58
62
  export type QueryableModuleStorage<ApiType extends ApiTypes> = Record<string, QueryableStorageEntry<ApiType, AnyTuple>>;
59
63
  export type QueryableModuleStorageAt<ApiType extends ApiTypes> = Record<string, QueryableStorageEntryAt<ApiType, AnyTuple>>;
60
- export type QueryableStorageMultiArg<ApiType extends ApiTypes> = QueryableStorageEntry<ApiType> | [
61
- QueryableStorageEntry<ApiType>,
62
- ...unknown[]
63
- ];
64
- export type QueryableStorageMultiBase<ApiType extends ApiTypes> = <T extends Codec[]>(calls: QueryableStorageMultiArg<ApiType>[]) => Observable<T>;
64
+ export type QueryableStorageMultiArg<ApiType extends ApiTypes> = QueryableStorageEntry<ApiType> | readonly [QueryableStorageEntry<ApiType>, ...unknown[]];
65
+ type QueryableStorageMultiCallResult<Call> = Call extends readonly [infer Entry, ...unknown[]] ? Entry extends StorageEntryResult<infer R> ? R : Codec : Call extends StorageEntryResult<infer R> ? R : Codec;
66
+ type QueryableStorageMultiResult<ApiType extends ApiTypes, Calls extends readonly QueryableStorageMultiArg<ApiType>[]> = {
67
+ -readonly [Index in keyof Calls]: QueryableStorageMultiCallResult<Calls[Index]>;
68
+ };
69
+ type QueryableStorageMultiReturn<ApiType extends ApiTypes, T extends Codec[], Calls extends readonly QueryableStorageMultiArg<ApiType>[]> = [
70
+ T
71
+ ] extends [never] ? QueryableStorageMultiResult<ApiType, Calls> : T;
72
+ export interface QueryableStorageMultiBase<ApiType extends ApiTypes> {
73
+ <T extends Codec[] = never, Calls extends readonly QueryableStorageMultiArg<ApiType>[] = readonly QueryableStorageMultiArg<ApiType>[]>(calls: readonly [...Calls]): Observable<QueryableStorageMultiReturn<ApiType, T, Calls>>;
74
+ <T extends Codec[] = Codec[]>(calls: readonly QueryableStorageMultiArg<ApiType>[]): Observable<T>;
75
+ }
65
76
  export interface QueryableStorageMultiPromise<ApiType extends ApiTypes> {
66
- <T extends Codec[]>(calls: QueryableStorageMultiArg<ApiType>[], callback: Callback<T>): UnsubscribePromise;
67
- <T extends Codec[]>(calls: QueryableStorageMultiArg<ApiType>[]): Promise<T>;
77
+ <T extends Codec[] = never, Calls extends readonly QueryableStorageMultiArg<ApiType>[] = readonly QueryableStorageMultiArg<ApiType>[]>(calls: readonly [...Calls], callback: Callback<QueryableStorageMultiReturn<ApiType, T, Calls>>): UnsubscribePromise;
78
+ <T extends Codec[] = Codec[]>(calls: readonly QueryableStorageMultiArg<ApiType>[], callback: Callback<T>): UnsubscribePromise;
79
+ <T extends Codec[] = never, Calls extends readonly QueryableStorageMultiArg<ApiType>[] = readonly QueryableStorageMultiArg<ApiType>[]>(calls: readonly [...Calls]): Promise<QueryableStorageMultiReturn<ApiType, T, Calls>>;
80
+ <T extends Codec[] = Codec[]>(calls: readonly QueryableStorageMultiArg<ApiType>[]): Promise<T>;
68
81
  }
69
82
  export type QueryableStorageMulti<ApiType extends ApiTypes> = ApiType extends 'rxjs' ? QueryableStorageMultiBase<ApiType> : QueryableStorageMultiPromise<ApiType>;
70
- export type AugmentedQuery<ApiType extends ApiTypes, F extends AnyFunction, A extends AnyTuple = AnyTuple> = MethodResult<ApiType, F> & StorageEntryBase<ApiType, F, A>;
71
- export type AugmentedQueryAt<ApiType extends ApiTypes, F extends AnyFunction, A extends AnyTuple = AnyTuple> = MethodResult<ApiType, F> & StorageEntryBaseAt<ApiType, F, A>;
83
+ export type AugmentedQuery<ApiType extends ApiTypes, F extends AnyFunction, A extends AnyTuple = AnyTuple> = MethodResult<ApiType, F> & StorageEntryBase<ApiType, F, A> & StorageEntryResult<ReturnCodec<F>>;
84
+ export type AugmentedQueryAt<ApiType extends ApiTypes, F extends AnyFunction, A extends AnyTuple = AnyTuple> = MethodResult<ApiType, F> & StorageEntryBaseAt<ApiType, F, A> & StorageEntryResult<ReturnCodec<F>>;
72
85
  export type AugmentedQueryDoubleMap<ApiType extends ApiTypes, F extends AnyFunction, A extends AnyTuple = AnyTuple> = AugmentedQuery<ApiType, F, A>;
73
86
  export interface AugmentedQueries<ApiType extends ApiTypes> extends EmptyBase<ApiType> {
74
87
  }