+doc #15537 add Typed Router pattern

Resolves #15537