@@ -19,13 +19,17 @@ export function isMessageAST(val: unknown): val is ResourceNode {
1919
2020const PROPS_BODY = [ 'b' , 'body' ]
2121
22- export function resolveBody ( node : ResourceNode ) : ReturnType < typeof resolveProps > {
22+ export function resolveBody (
23+ node : ResourceNode
24+ ) : ReturnType < typeof resolveProps < MessageNode | PluralNode > > {
2325 return resolveProps < MessageNode | PluralNode > ( node , PROPS_BODY )
2426}
2527
2628const PROPS_CASES = [ 'c' , 'cases' ]
2729
28- export function resolveCases ( node : PluralNode ) : ReturnType < typeof resolveProps > {
30+ export function resolveCases (
31+ node : PluralNode
32+ ) : ReturnType < typeof resolveProps < PluralNode [ 'cases' ] , PluralNode [ 'cases' ] > > {
2933 return resolveProps < PluralNode [ 'cases' ] , PluralNode [ 'cases' ] > ( node , PROPS_CASES , [ ] )
3034}
3135
@@ -37,13 +41,15 @@ export function resolveStatic(node: MessageNode): ReturnType<typeof resolveProps
3741
3842const PROPS_ITEMS = [ 'i' , 'items' ]
3943
40- export function resolveItems ( node : MessageNode ) : ReturnType < typeof resolveProps > {
44+ export function resolveItems (
45+ node : MessageNode
46+ ) : ReturnType < typeof resolveProps < MessageNode [ 'items' ] , MessageNode [ 'items' ] > > {
4147 return resolveProps < MessageNode [ 'items' ] , MessageNode [ 'items' ] > ( node , PROPS_ITEMS , [ ] )
4248}
4349
4450const PROPS_TYPE = [ 't' , 'type' ]
4551
46- export function resolveType ( node : Node ) : ReturnType < typeof resolveProps > {
52+ export function resolveType ( node : Node ) : ReturnType < typeof resolveProps < NodeTypes > > {
4753 return resolveProps < NodeTypes > ( node , PROPS_TYPE )
4854}
4955
@@ -63,13 +69,17 @@ export function resolveValue<Message = string>(
6369
6470const PROPS_MODIFIER = [ 'm' , 'modifier' ]
6571
66- export function resolveLinkedModifier ( node : LinkedNode ) : ReturnType < typeof resolveProps > {
72+ export function resolveLinkedModifier (
73+ node : LinkedNode
74+ ) : ReturnType < typeof resolveProps < LinkedModifierNode > > {
6775 return resolveProps < LinkedModifierNode > ( node , PROPS_MODIFIER )
6876}
6977
7078const PROPS_KEY = [ 'k' , 'key' ]
7179
72- export function resolveLinkedKey ( node : LinkedNode ) : ReturnType < typeof resolveProps > {
80+ export function resolveLinkedKey (
81+ node : LinkedNode
82+ ) : ReturnType < typeof resolveProps < LinkedNode [ 'key' ] > > {
7383 const resolved = resolveProps < LinkedNode [ 'key' ] > ( node , PROPS_KEY )
7484 if ( resolved ) {
7585 return resolved
0 commit comments