export type HydrationContext = { id : string ; count : number ; } ; type SharedConfig = { context ? : HydrationContext ; resources ? : { [ key ] : any ; } ; load ? : ( id : string ) => Promise < any > | undefined ; gather ? : ( key : string ) => void ; registry ? : Map < string , Element > ; } ; export const sharedConfig = { } ; export function setHydrateContext ( context ? ) { sharedConfig . context = context ; } export function nextHydrateContext ( ) { return { ... sharedConfig . context , id : `${ sharedConfig . context ! . id }${ sharedConfig . context ! . count ++ }.` , count : 0 } ; }