diff --git a/packages/governance/src/paramManager.js b/packages/governance/src/paramManager.js index ac1093160c9..a7422dbb8c8 100644 --- a/packages/governance/src/paramManager.js +++ b/packages/governance/src/paramManager.js @@ -106,8 +106,8 @@ const parse = paramDesc => { describers.push(describer); }); - /** @type {() => Record} */ const getParams = () => { + /** @type {Record} */ const descriptions = {}; describers.forEach(d => { const description = d(); diff --git a/packages/governance/src/types.js b/packages/governance/src/types.js index 994ab8f8509..c035b352c75 100644 --- a/packages/governance/src/types.js +++ b/packages/governance/src/types.js @@ -23,9 +23,11 @@ */ /** - * @typedef {Object} ParamManagerPublic - * ParamManagerPublic also has updateFoo methods for each defined parameter. + * @typedef {Object} ParamManagerBase * @property {() => Record} getParams + * + * @typedef {{ [updater: string]: (arg: any) => void }} ParamManagerUpdaters + * @typedef {ParamManagerBase & ParamManagerUpdaters} ParamManagerPublic */ /** diff --git a/packages/governance/test/test-param-manager.js b/packages/governance/test/test-param-manager.js index 28fc49e8177..ed6e9e06f9f 100644 --- a/packages/governance/test/test-param-manager.js +++ b/packages/governance/test/test-param-manager.js @@ -189,9 +189,9 @@ test('params unknown type', async t => { const stuffDescription = { name: stuffKey, value: 'It was the best of times, it was the worst of times', - // @ts-ignore illegal value for testing type: 'quote', }; + // @ts-ignore illegal value for testing t.throws(() => buildParamManager([stuffDescription]), { message: 'unknown type guard "quote"', });