diff --git a/packages/api/src/types/augment/rpc.ts b/packages/api/src/types/augment/rpc.ts index 8ca906eb0f..81a9e87be3 100644 --- a/packages/api/src/types/augment/rpc.ts +++ b/packages/api/src/types/augment/rpc.ts @@ -69,6 +69,10 @@ declare module '@polkadot/rpc-core/types.jsonrpc' { * Retrieves the header for a specific block **/ getHeader(hash?: BlockHash | string | Uint8Array): Observable
; + /** + * Retrieves the newest header via subscription + **/ + subscribeAllHeads(): Observable
; /** * Retrieves the best finalized header via subscription **/ diff --git a/packages/jsonrpc/src/chain.ts b/packages/jsonrpc/src/chain.ts index 7dd6970456..f417d5008c 100644 --- a/packages/jsonrpc/src/chain.ts +++ b/packages/jsonrpc/src/chain.ts @@ -62,6 +62,17 @@ const subscribeFinalizedHeads: RpcMethodOpt = { type: 'Header' }; +const subscribeAllHeads: RpcMethodOpt = { + description: 'Retrieves the newest header via subscription', + params: [], + pubsub: [ + 'allHead', + 'subscribeAllHeads', + 'unsubscribeAllHeads' + ], + type: 'Header' +}; + const section = 'chain'; /** @@ -78,6 +89,7 @@ export default { getFinalizedHead: createMethod(section, 'getFinalizedHead', getFinalizedHead), getHeader: createMethod(section, 'getHeader', getHeader), subscribeFinalizedHeads: createMethod(section, 'subscribeFinalizedHeads', subscribeFinalizedHeads), - subscribeNewHeads: createMethod(section, 'subscribeNewHeads', subscribeNewHeads) + subscribeNewHeads: createMethod(section, 'subscribeNewHeads', subscribeNewHeads), + subscribeAllHeads: createMethod(section, 'subscribeAllHeads', subscribeAllHeads) } };