type Join<K, P> = K extends string | number ? (P extends string | number ? `${K}.${P}` : never) : never;
export type Path<T> = T extends object ? {
    [K in keyof T]-?: K extends string | number ? `${K}` | Join<K, Path<T[K]>> : never;
}[keyof T] : '';
export {};
