@goodie-forms/react 1.0.0-alpha → 1.1.1-alpha

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,4 +1,4 @@
1
- import { Field, FormField } from '../../../core/src';
1
+ import { Field, FormField, NonnullFormField } from '../../../core/src';
2
2
  import { ChangeEvent, FocusEvent, ReactNode, Ref } from 'react';
3
3
  import { UseForm } from '../hooks/useForm';
4
4
  export interface RenderParams<TShape extends object, TPath extends Field.Paths<TShape>> {
@@ -9,14 +9,20 @@ export interface RenderParams<TShape extends object, TPath extends Field.Paths<T
9
9
  onFocus: (event: FocusEvent) => void;
10
10
  onBlur: (event: FocusEvent) => void;
11
11
  };
12
- field: FormField<TShape, TPath>;
12
+ field: undefined extends Field.GetValue<TShape, TPath> ? FormField<TShape, TPath> : NonnullFormField<TShape, TPath>;
13
13
  }
14
- export interface FieldRendererProps<TShape extends object, TPath extends Field.Paths<TShape>> {
14
+ type DefaultValueProps<TValue> = undefined extends TValue ? {
15
+ defaultValue?: TValue | (() => TValue);
16
+ } : {
17
+ defaultValue: TValue | (() => TValue);
18
+ };
19
+ export type FieldRendererProps<TShape extends object, TPath extends Field.Paths<TShape>> = {
15
20
  form: UseForm<TShape>;
16
21
  path: TPath;
17
- resetOnUnmount?: boolean;
18
- defaultValue?: Field.GetValue<TShape, TPath>;
22
+ overrideInitialValue?: boolean;
23
+ unbindOnUnmount?: boolean;
19
24
  render: (params: RenderParams<TShape, TPath>) => ReactNode;
20
- }
25
+ } & DefaultValueProps<Field.GetValue<TShape, TPath>>;
21
26
  export declare function FieldRenderer<TShape extends object, TPath extends Field.Paths<TShape>>(props: FieldRendererProps<TShape, TPath>): import("react/jsx-runtime").JSX.Element;
27
+ export {};
22
28
  //# sourceMappingURL=FieldRenderer.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"FieldRenderer.d.ts","sourceRoot":"","sources":["../../src/components/FieldRenderer.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EACL,WAAW,EACX,UAAU,EACV,SAAS,EACT,GAAG,EAGJ,MAAM,OAAO,CAAC;AACf,OAAO,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAI3C,MAAM,WAAW,YAAY,CAC3B,MAAM,SAAS,MAAM,EACrB,KAAK,SAAS,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC;IAEjC,GAAG,EAAE,GAAG,CAAC,GAAG,GAAG,IAAI,CAAC,CAAC;IAErB,KAAK,EAAE,KAAK,CAAC,QAAQ,CAAC,MAAM,EAAE,KAAK,CAAC,GAAG,SAAS,CAAC;IAEjD,QAAQ,EAAE;QACR,QAAQ,EAAE,CAAC,KAAK,EAAE,WAAW,CAAC,WAAW,CAAC,KAAK,IAAI,CAAC;QACpD,OAAO,EAAE,CAAC,KAAK,EAAE,UAAU,KAAK,IAAI,CAAC;QACrC,MAAM,EAAE,CAAC,KAAK,EAAE,UAAU,KAAK,IAAI,CAAC;KACrC,CAAC;IAEF,KAAK,EAAE,SAAS,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;CACjC;AAED,MAAM,WAAW,kBAAkB,CACjC,MAAM,SAAS,MAAM,EACrB,KAAK,SAAS,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC;IAEjC,IAAI,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;IACtB,IAAI,EAAE,KAAK,CAAC;IACZ,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,YAAY,CAAC,EAAE,KAAK,CAAC,QAAQ,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;IAC7C,MAAM,EAAE,CAAC,MAAM,EAAE,YAAY,CAAC,MAAM,EAAE,KAAK,CAAC,KAAK,SAAS,CAAC;CAC5D;AAED,wBAAgB,aAAa,CAC3B,MAAM,SAAS,MAAM,EACrB,KAAK,SAAS,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,EACjC,KAAK,EAAE,kBAAkB,CAAC,MAAM,EAAE,KAAK,CAAC,2CA8DzC"}
1
+ {"version":3,"file":"FieldRenderer.d.ts","sourceRoot":"","sources":["../../src/components/FieldRenderer.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACxE,OAAO,EACL,WAAW,EACX,UAAU,EACV,SAAS,EACT,GAAG,EAGJ,MAAM,OAAO,CAAC;AACf,OAAO,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAI3C,MAAM,WAAW,YAAY,CAC3B,MAAM,SAAS,MAAM,EACrB,KAAK,SAAS,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC;IAEjC,GAAG,EAAE,GAAG,CAAC,GAAG,GAAG,IAAI,CAAC,CAAC;IAErB,KAAK,EAAE,KAAK,CAAC,QAAQ,CAAC,MAAM,EAAE,KAAK,CAAC,GAAG,SAAS,CAAC;IAEjD,QAAQ,EAAE;QACR,QAAQ,EAAE,CAAC,KAAK,EAAE,WAAW,CAAC,WAAW,CAAC,KAAK,IAAI,CAAC;QACpD,OAAO,EAAE,CAAC,KAAK,EAAE,UAAU,KAAK,IAAI,CAAC;QACrC,MAAM,EAAE,CAAC,KAAK,EAAE,UAAU,KAAK,IAAI,CAAC;KACrC,CAAC;IAEF,KAAK,EAAE,SAAS,SAAS,KAAK,CAAC,QAAQ,CAAC,MAAM,EAAE,KAAK,CAAC,GAClD,SAAS,CAAC,MAAM,EAAE,KAAK,CAAC,GACxB,gBAAgB,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;CACrC;AAED,KAAK,iBAAiB,CAAC,MAAM,IAAI,SAAS,SAAS,MAAM,GACrD;IAAE,YAAY,CAAC,EAAE,MAAM,GAAG,CAAC,MAAM,MAAM,CAAC,CAAA;CAAE,GAC1C;IAAE,YAAY,EAAE,MAAM,GAAG,CAAC,MAAM,MAAM,CAAC,CAAA;CAAE,CAAC;AAE9C,MAAM,MAAM,kBAAkB,CAC5B,MAAM,SAAS,MAAM,EACrB,KAAK,SAAS,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,IAC/B;IACF,IAAI,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;IACtB,IAAI,EAAE,KAAK,CAAC;IACZ,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,MAAM,EAAE,CAAC,MAAM,EAAE,YAAY,CAAC,MAAM,EAAE,KAAK,CAAC,KAAK,SAAS,CAAC;CAC5D,GAAG,iBAAiB,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC;AAErD,wBAAgB,aAAa,CAC3B,MAAM,SAAS,MAAM,EACrB,KAAK,SAAS,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,EACjC,KAAK,EAAE,kBAAkB,CAAC,MAAM,EAAE,KAAK,CAAC,2CAqEzC"}
@@ -7,7 +7,7 @@ export declare function useForm<TShape extends object>(formConfigs: Form.FormCon
7
7
  }): {
8
8
  formConfigs: {
9
9
  initialData?: import('packages/core/src/types/DeepPartial').DeepPartial<TShape> | undefined;
10
- validationSchema?: import('@standard-schema/spec').StandardSchemaV1<TShape, TShape> | undefined;
10
+ validationSchema?: import('@standard-schema/spec').StandardSchemaV1<unknown, TShape> | undefined;
11
11
  equalityComparators?: Record<any, (a: any, b: any) => boolean>;
12
12
  };
13
13
  hookConfigs: {
@@ -1 +1 @@
1
- {"version":3,"file":"useForm.d.ts","sourceRoot":"","sources":["../../src/hooks/useForm.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,KAAK,IAAI,EAAE,MAAM,oBAAoB,CAAC;AAK/D,wBAAgB,OAAO,CAAC,MAAM,SAAS,MAAM,EAC3C,WAAW,EAAE,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,EACrC,WAAW,CAAC,EAAE;IACZ,YAAY,CAAC,EAAE,UAAU,GAAG,QAAQ,GAAG,UAAU,CAAC;IAClD,cAAc,CAAC,EAAE,UAAU,GAAG,QAAQ,GAAG,UAAU,CAAC;IACpD,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;;;;;;;uBAJgB,UAAU,GAAG,QAAQ,GAAG,UAAU;yBAChC,UAAU,GAAG,QAAQ,GAAG,UAAU;sBACrC,OAAO;sBACP,OAAO;;;EAqCxB;AAED,MAAM,MAAM,OAAO,CAAC,MAAM,SAAS,MAAM,IAAI,UAAU,CAAC,OAAO,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"useForm.d.ts","sourceRoot":"","sources":["../../src/hooks/useForm.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,KAAK,IAAI,EAAE,MAAM,oBAAoB,CAAC;AAK/D,wBAAgB,OAAO,CAAC,MAAM,SAAS,MAAM,EAC3C,WAAW,EAAE,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,EACrC,WAAW,CAAC,EAAE;IACZ,YAAY,CAAC,EAAE,UAAU,GAAG,QAAQ,GAAG,UAAU,CAAC;IAClD,cAAc,CAAC,EAAE,UAAU,GAAG,QAAQ,GAAG,UAAU,CAAC;IACpD,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;;;;;;;uBAJgB,UAAU,GAAG,QAAQ,GAAG,UAAU;yBAChC,UAAU,GAAG,QAAQ,GAAG,UAAU;sBACrC,OAAO;sBACP,OAAO;;;EAgCxB;AAED,MAAM,MAAM,OAAO,CAAC,MAAM,SAAS,MAAM,IAAI,UAAU,CAAC,OAAO,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC"}
@@ -2,5 +2,7 @@ import { Field } from '../../../core/src';
2
2
  import { UseForm } from './useForm';
3
3
  export declare function useFormErrorObserver<TShape extends object>(form: UseForm<TShape>, options?: {
4
4
  include?: Field.Paths<TShape>[];
5
- }): Record<Field.Paths<TShape>, import("@standard-schema/spec").StandardSchemaV1.Issue[]>;
5
+ }): Record<{ [K in keyof TShape & string]: NonNullable<TShape[K]> extends (...args: any[]) => any ? never : NonNullable<TShape[K]> extends (infer U)[] ? U extends object ? K | `${K}[*]` | `${K}[*].${{ [K_2 in keyof NonNullable<U> & string]: NonNullable<NonNullable<U>[K_2]> extends (...args: any[]) => any ? never : NonNullable<NonNullable<U>[K_2]> extends (infer U)[] ? U extends object ? K_2 | `${K_2}[*]` | `${K_2}[*].${/*elided*/ any[keyof NonNullable<U> & string]}` : K_2 | `${K_2}[*]` : NonNullable<NonNullable<U>[K_2]> extends object ? K_2 | `${K_2}.${{ [K_3 in keyof NonNullable<NonNullable<U>[K_2]> & string]: NonNullable<NonNullable<NonNullable<U>[K_2]>[K_3]> extends (...args: any[]) => any ? never : NonNullable<NonNullable<NonNullable<U>[K_2]>[K_3]> extends (infer U)[] ? U extends object ? K_3 | `${K_3}[*]` | `${K_3}[*].${/*elided*/ any[keyof NonNullable<U> & string]}` : K_3 | `${K_3}[*]` : NonNullable<NonNullable<NonNullable<U>[K_2]>[K_3]> extends object ? K_3 | `${K_3}.${{ [K_4 in keyof NonNullable<NonNullable<NonNullable<U>[K_2]>[K_3]> & string]: NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_3]>[K_4]> extends (...args: any[]) => any ? never : NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_3]>[K_4]> extends (infer U)[] ? U extends object ? K_4 | `${K_4}[*]` | `${K_4}[*].${/*elided*/ any[keyof NonNullable<U> & string]}` : K_4 | `${K_4}[*]` : NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_3]>[K_4]> extends object ? K_4 | `${K_4}.${{ [K_5 in keyof NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_3]>[K_4]> & string]: NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_3]>[K_4]>[K_5]> extends (...args: any[]) => any ? never : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_3]>[K_4]>[K_5]> extends (infer U)[] ? U extends object ? K_5 | `${K_5}[*]` | `${K_5}[*].${/*elided*/ any[keyof NonNullable<U> & string]}` : K_5 | `${K_5}[*]` : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_3]>[K_4]>[K_5]> extends object ? K_5 | `${K_5}.${{ [K_6 in keyof NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_3]>[K_4]>[K_5]> & string]: NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_3]>[K_4]>[K_5]>[K_6]> extends (...args: any[]) => any ? never : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_3]>[K_4]>[K_5]>[K_6]> extends (infer U)[] ? U extends object ? K_6 | `${K_6}[*]` | `${K_6}[*].${/*elided*/ any[keyof NonNullable<U> & string]}` : K_6 | `${K_6}[*]` : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_3]>[K_4]>[K_5]>[K_6]> extends object ? K_6 | `${K_6}.${{ [K_7 in keyof NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_3]>[K_4]>[K_5]>[K_6]> & string]: NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_3]>[K_4]>[K_5]>[K_6]>[K_7]> extends (...args: any[]) => any ? never : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_3]>[K_4]>[K_5]>[K_6]>[K_7]> extends (infer U)[] ? U extends object ? K_7 | `${K_7}[*]` | `${K_7}[*].${/*elided*/ any[keyof NonNullable<U> & string]}` : K_7 | `${K_7}[*]` : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_3]>[K_4]>[K_5]>[K_6]>[K_7]> extends object ? K_7 | `${K_7}.${{ [K_8 in keyof NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_3]>[K_4]>[K_5]>[K_6]>[K_7]> & string]: NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_3]>[K_4]>[K_5]>[K_6]>[K_7]>[K_8]> extends (...args: any[]) => any ? never : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_3]>[K_4]>[K_5]>[K_6]>[K_7]>[K_8]> extends (infer U)[] ? U extends object ? K_8 | `${K_8}[*]` | `${K_8}[*].${/*elided*/ any[keyof NonNullable<U> & string]}` : K_8 | `${K_8}[*]` : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_3]>[K_4]>[K_5]>[K_6]>[K_7]>[K_8]> extends object ? K_8 | `${K_8}.${{ [K_9 in keyof NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_3]>[K_4]>[K_5]>[K_6]>[K_7]>[K_8]> & string]: NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_3]>[K_4]>[K_5]>[K_6]>[K_7]>[K_8]>[K_9]> extends (...args: any[]) => any ? never : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_3]>[K_4]>[K_5]>[K_6]>[K_7]>[K_8]>[K_9]> extends (infer U)[] ? U extends object ? K_9 | `${K_9}[*]` | `${K_9}[*].${/*elided*/ any[keyof NonNullable<U> & string]}` : K_9 | `${K_9}[*]` : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_3]>[K_4]>[K_5]>[K_6]>[K_7]>[K_8]>[K_9]> extends object ? K_9 | `${K_9}.${{ [K_10 in keyof NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_3]>[K_4]>[K_5]>[K_6]>[K_7]>[K_8]>[K_9]> & string]: NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_3]>[K_4]>[K_5]>[K_6]>[K_7]>[K_8]>[K_9]>[K_10]> extends (...args: any[]) => any ? never : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_3]>[K_4]>[K_5]>[K_6]>[K_7]>[K_8]>[K_9]>[K_10]> extends (infer U)[] ? U extends object ? K_10 | `${K_10}[*]` | `${K_10}[*].${/*elided*/ any[keyof NonNullable<U> & string]}` : K_10 | `${K_10}[*]` : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_3]>[K_4]>[K_5]>[K_6]>[K_7]>[K_8]>[K_9]>[K_10]> extends object ? K_10 | `${K_10}.${{ [K_11 in keyof NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_3]>[K_4]>[K_5]>[K_6]>[K_7]>[K_8]>[K_9]>[K_10]> & string]: NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_3]>[K_4]>[K_5]>[K_6]>[K_7]>[K_8]>[K_9]>[K_10]>[K_11]> extends (...args: any[]) => any ? never : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_3]>[K_4]>[K_5]>[K_6]>[K_7]>[K_8]>[K_9]>[K_10]>[K_11]> extends (infer U)[] ? U extends object ? K_11 | `${K_11}[*]` | `${K_11}[*].${/*elided*/ any[keyof NonNullable<U> & string]}` : K_11 | `${K_11}[*]` : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_3]>[K_4]>[K_5]>[K_6]>[K_7]>[K_8]>[K_9]>[K_10]>[K_11]> extends object ? K_11 | `${K_11}.${/*elided*/ any[keyof NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_3]>[K_4]>[K_5]>[K_6]>[K_7]>[K_8]>[K_9]>[K_10]>[K_11]> & string]}` : K_11; }[keyof NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_3]>[K_4]>[K_5]>[K_6]>[K_7]>[K_8]>[K_9]>[K_10]> & string]}` : K_10; }[keyof NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_3]>[K_4]>[K_5]>[K_6]>[K_7]>[K_8]>[K_9]> & string]}` : K_9; }[keyof NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_3]>[K_4]>[K_5]>[K_6]>[K_7]>[K_8]> & string]}` : K_8; }[keyof NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_3]>[K_4]>[K_5]>[K_6]>[K_7]> & string]}` : K_7; }[keyof NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_3]>[K_4]>[K_5]>[K_6]> & string]}` : K_6; }[keyof NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_3]>[K_4]>[K_5]> & string]}` : K_5; }[keyof NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_3]>[K_4]> & string]}` : K_4; }[keyof NonNullable<NonNullable<NonNullable<U>[K_2]>[K_3]> & string]}` : K_3; }[keyof NonNullable<NonNullable<U>[K_2]> & string]}` : K_2; }[keyof NonNullable<U> & string]}` : K | `${K}[*]` : NonNullable<TShape[K]> extends object ? K | `${K}.${{ [K_3 in keyof NonNullable<TShape[K]> & string]: NonNullable<NonNullable<TShape[K]>[K_3]> extends (...args: any[]) => any ? never : NonNullable<NonNullable<TShape[K]>[K_3]> extends (infer U)[] ? U extends object ? K_3 | `${K_3}[*]` | `${K_3}[*].${{ [K_2 in keyof NonNullable<U> & string]: NonNullable<NonNullable<U>[K_2]> extends (...args: any[]) => any ? never : NonNullable<NonNullable<U>[K_2]> extends (infer U)[] ? U extends object ? K_2 | `${K_2}[*]` | `${K_2}[*].${/*elided*/ any[keyof NonNullable<U> & string]}` : K_2 | `${K_2}[*]` : NonNullable<NonNullable<U>[K_2]> extends object ? K_2 | `${K_2}.${{ [K_4 in keyof NonNullable<NonNullable<U>[K_2]> & string]: NonNullable<NonNullable<NonNullable<U>[K_2]>[K_4]> extends (...args: any[]) => any ? never : NonNullable<NonNullable<NonNullable<U>[K_2]>[K_4]> extends (infer U)[] ? U extends object ? K_4 | `${K_4}[*]` | `${K_4}[*].${/*elided*/ any[keyof NonNullable<U> & string]}` : K_4 | `${K_4}[*]` : NonNullable<NonNullable<NonNullable<U>[K_2]>[K_4]> extends object ? K_4 | `${K_4}.${{ [K_5 in keyof NonNullable<NonNullable<NonNullable<U>[K_2]>[K_4]> & string]: NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_4]>[K_5]> extends (...args: any[]) => any ? never : NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_4]>[K_5]> extends (infer U)[] ? U extends object ? K_5 | `${K_5}[*]` | `${K_5}[*].${/*elided*/ any[keyof NonNullable<U> & string]}` : K_5 | `${K_5}[*]` : NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_4]>[K_5]> extends object ? K_5 | `${K_5}.${{ [K_6 in keyof NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_4]>[K_5]> & string]: NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_4]>[K_5]>[K_6]> extends (...args: any[]) => any ? never : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_4]>[K_5]>[K_6]> extends (infer U)[] ? U extends object ? K_6 | `${K_6}[*]` | `${K_6}[*].${/*elided*/ any[keyof NonNullable<U> & string]}` : K_6 | `${K_6}[*]` : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_4]>[K_5]>[K_6]> extends object ? K_6 | `${K_6}.${{ [K_7 in keyof NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_4]>[K_5]>[K_6]> & string]: NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_4]>[K_5]>[K_6]>[K_7]> extends (...args: any[]) => any ? never : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_4]>[K_5]>[K_6]>[K_7]> extends (infer U)[] ? U extends object ? K_7 | `${K_7}[*]` | `${K_7}[*].${/*elided*/ any[keyof NonNullable<U> & string]}` : K_7 | `${K_7}[*]` : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_4]>[K_5]>[K_6]>[K_7]> extends object ? K_7 | `${K_7}.${{ [K_8 in keyof NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_4]>[K_5]>[K_6]>[K_7]> & string]: NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_4]>[K_5]>[K_6]>[K_7]>[K_8]> extends (...args: any[]) => any ? never : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_4]>[K_5]>[K_6]>[K_7]>[K_8]> extends (infer U)[] ? U extends object ? K_8 | `${K_8}[*]` | `${K_8}[*].${/*elided*/ any[keyof NonNullable<U> & string]}` : K_8 | `${K_8}[*]` : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_4]>[K_5]>[K_6]>[K_7]>[K_8]> extends object ? K_8 | `${K_8}.${{ [K_9 in keyof NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_4]>[K_5]>[K_6]>[K_7]>[K_8]> & string]: NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_4]>[K_5]>[K_6]>[K_7]>[K_8]>[K_9]> extends (...args: any[]) => any ? never : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_4]>[K_5]>[K_6]>[K_7]>[K_8]>[K_9]> extends (infer U)[] ? U extends object ? K_9 | `${K_9}[*]` | `${K_9}[*].${/*elided*/ any[keyof NonNullable<U> & string]}` : K_9 | `${K_9}[*]` : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_4]>[K_5]>[K_6]>[K_7]>[K_8]>[K_9]> extends object ? K_9 | `${K_9}.${{ [K_10 in keyof NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_4]>[K_5]>[K_6]>[K_7]>[K_8]>[K_9]> & string]: NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_4]>[K_5]>[K_6]>[K_7]>[K_8]>[K_9]>[K_10]> extends (...args: any[]) => any ? never : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_4]>[K_5]>[K_6]>[K_7]>[K_8]>[K_9]>[K_10]> extends (infer U)[] ? U extends object ? K_10 | `${K_10}[*]` | `${K_10}[*].${/*elided*/ any[keyof NonNullable<U> & string]}` : K_10 | `${K_10}[*]` : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_4]>[K_5]>[K_6]>[K_7]>[K_8]>[K_9]>[K_10]> extends object ? K_10 | `${K_10}.${{ [K_11 in keyof NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_4]>[K_5]>[K_6]>[K_7]>[K_8]>[K_9]>[K_10]> & string]: NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_4]>[K_5]>[K_6]>[K_7]>[K_8]>[K_9]>[K_10]>[K_11]> extends (...args: any[]) => any ? never : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_4]>[K_5]>[K_6]>[K_7]>[K_8]>[K_9]>[K_10]>[K_11]> extends (infer U)[] ? U extends object ? K_11 | `${K_11}[*]` | `${K_11}[*].${/*elided*/ any[keyof NonNullable<U> & string]}` : K_11 | `${K_11}[*]` : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_4]>[K_5]>[K_6]>[K_7]>[K_8]>[K_9]>[K_10]>[K_11]> extends object ? K_11 | `${K_11}.${/*elided*/ any[keyof NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_4]>[K_5]>[K_6]>[K_7]>[K_8]>[K_9]>[K_10]>[K_11]> & string]}` : K_11; }[keyof NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_4]>[K_5]>[K_6]>[K_7]>[K_8]>[K_9]>[K_10]> & string]}` : K_10; }[keyof NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_4]>[K_5]>[K_6]>[K_7]>[K_8]>[K_9]> & string]}` : K_9; }[keyof NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_4]>[K_5]>[K_6]>[K_7]>[K_8]> & string]}` : K_8; }[keyof NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_4]>[K_5]>[K_6]>[K_7]> & string]}` : K_7; }[keyof NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_4]>[K_5]>[K_6]> & string]}` : K_6; }[keyof NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_4]>[K_5]> & string]}` : K_5; }[keyof NonNullable<NonNullable<NonNullable<U>[K_2]>[K_4]> & string]}` : K_4; }[keyof NonNullable<NonNullable<U>[K_2]> & string]}` : K_2; }[keyof NonNullable<U> & string]}` : K_3 | `${K_3}[*]` : NonNullable<NonNullable<TShape[K]>[K_3]> extends object ? K_3 | `${K_3}.${{ [K_4 in keyof NonNullable<NonNullable<TShape[K]>[K_3]> & string]: NonNullable<NonNullable<NonNullable<TShape[K]>[K_3]>[K_4]> extends (...args: any[]) => any ? never : NonNullable<NonNullable<NonNullable<TShape[K]>[K_3]>[K_4]> extends (infer U)[] ? U extends object ? K_4 | `${K_4}[*]` | `${K_4}[*].${{ [K_2 in keyof NonNullable<U> & string]: NonNullable<NonNullable<U>[K_2]> extends (...args: any[]) => any ? never : NonNullable<NonNullable<U>[K_2]> extends (infer U)[] ? U extends object ? K_2 | `${K_2}[*]` | `${K_2}[*].${/*elided*/ any[keyof NonNullable<U> & string]}` : K_2 | `${K_2}[*]` : NonNullable<NonNullable<U>[K_2]> extends object ? K_2 | `${K_2}.${{ [K_5 in keyof NonNullable<NonNullable<U>[K_2]> & string]: NonNullable<NonNullable<NonNullable<U>[K_2]>[K_5]> extends (...args: any[]) => any ? never : NonNullable<NonNullable<NonNullable<U>[K_2]>[K_5]> extends (infer U)[] ? U extends object ? K_5 | `${K_5}[*]` | `${K_5}[*].${/*elided*/ any[keyof NonNullable<U> & string]}` : K_5 | `${K_5}[*]` : NonNullable<NonNullable<NonNullable<U>[K_2]>[K_5]> extends object ? K_5 | `${K_5}.${{ [K_6 in keyof NonNullable<NonNullable<NonNullable<U>[K_2]>[K_5]> & string]: NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_5]>[K_6]> extends (...args: any[]) => any ? never : NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_5]>[K_6]> extends (infer U)[] ? U extends object ? K_6 | `${K_6}[*]` | `${K_6}[*].${/*elided*/ any[keyof NonNullable<U> & string]}` : K_6 | `${K_6}[*]` : NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_5]>[K_6]> extends object ? K_6 | `${K_6}.${{ [K_7 in keyof NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_5]>[K_6]> & string]: NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_5]>[K_6]>[K_7]> extends (...args: any[]) => any ? never : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_5]>[K_6]>[K_7]> extends (infer U)[] ? U extends object ? K_7 | `${K_7}[*]` | `${K_7}[*].${/*elided*/ any[keyof NonNullable<U> & string]}` : K_7 | `${K_7}[*]` : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_5]>[K_6]>[K_7]> extends object ? K_7 | `${K_7}.${{ [K_8 in keyof NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_5]>[K_6]>[K_7]> & string]: NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_5]>[K_6]>[K_7]>[K_8]> extends (...args: any[]) => any ? never : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_5]>[K_6]>[K_7]>[K_8]> extends (infer U)[] ? U extends object ? K_8 | `${K_8}[*]` | `${K_8}[*].${/*elided*/ any[keyof NonNullable<U> & string]}` : K_8 | `${K_8}[*]` : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_5]>[K_6]>[K_7]>[K_8]> extends object ? K_8 | `${K_8}.${{ [K_9 in keyof NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_5]>[K_6]>[K_7]>[K_8]> & string]: NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_5]>[K_6]>[K_7]>[K_8]>[K_9]> extends (...args: any[]) => any ? never : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_5]>[K_6]>[K_7]>[K_8]>[K_9]> extends (infer U)[] ? U extends object ? K_9 | `${K_9}[*]` | `${K_9}[*].${/*elided*/ any[keyof NonNullable<U> & string]}` : K_9 | `${K_9}[*]` : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_5]>[K_6]>[K_7]>[K_8]>[K_9]> extends object ? K_9 | `${K_9}.${{ [K_10 in keyof NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_5]>[K_6]>[K_7]>[K_8]>[K_9]> & string]: NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_5]>[K_6]>[K_7]>[K_8]>[K_9]>[K_10]> extends (...args: any[]) => any ? never : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_5]>[K_6]>[K_7]>[K_8]>[K_9]>[K_10]> extends (infer U)[] ? U extends object ? K_10 | `${K_10}[*]` | `${K_10}[*].${/*elided*/ any[keyof NonNullable<U> & string]}` : K_10 | `${K_10}[*]` : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_5]>[K_6]>[K_7]>[K_8]>[K_9]>[K_10]> extends object ? K_10 | `${K_10}.${{ [K_11 in keyof NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_5]>[K_6]>[K_7]>[K_8]>[K_9]>[K_10]> & string]: NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_5]>[K_6]>[K_7]>[K_8]>[K_9]>[K_10]>[K_11]> extends (...args: any[]) => any ? never : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_5]>[K_6]>[K_7]>[K_8]>[K_9]>[K_10]>[K_11]> extends (infer U)[] ? U extends object ? K_11 | `${K_11}[*]` | `${K_11}[*].${/*elided*/ any[keyof NonNullable<U> & string]}` : K_11 | `${K_11}[*]` : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_5]>[K_6]>[K_7]>[K_8]>[K_9]>[K_10]>[K_11]> extends object ? K_11 | `${K_11}.${/*elided*/ any[keyof NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_5]>[K_6]>[K_7]>[K_8]>[K_9]>[K_10]>[K_11]> & string]}` : K_11; }[keyof NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_5]>[K_6]>[K_7]>[K_8]>[K_9]>[K_10]> & string]}` : K_10; }[keyof NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_5]>[K_6]>[K_7]>[K_8]>[K_9]> & string]}` : K_9; }[keyof NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_5]>[K_6]>[K_7]>[K_8]> & string]}` : K_8; }[keyof NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_5]>[K_6]>[K_7]> & string]}` : K_7; }[keyof NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_5]>[K_6]> & string]}` : K_6; }[keyof NonNullable<NonNullable<NonNullable<U>[K_2]>[K_5]> & string]}` : K_5; }[keyof NonNullable<NonNullable<U>[K_2]> & string]}` : K_2; }[keyof NonNullable<U> & string]}` : K_4 | `${K_4}[*]` : NonNullable<NonNullable<NonNullable<TShape[K]>[K_3]>[K_4]> extends object ? K_4 | `${K_4}.${{ [K_5 in keyof NonNullable<NonNullable<NonNullable<TShape[K]>[K_3]>[K_4]> & string]: NonNullable<NonNullable<NonNullable<NonNullable<TShape[K]>[K_3]>[K_4]>[K_5]> extends (...args: any[]) => any ? never : NonNullable<NonNullable<NonNullable<NonNullable<TShape[K]>[K_3]>[K_4]>[K_5]> extends (infer U)[] ? U extends object ? K_5 | `${K_5}[*]` | `${K_5}[*].${{ [K_2 in keyof NonNullable<U> & string]: NonNullable<NonNullable<U>[K_2]> extends (...args: any[]) => any ? never : NonNullable<NonNullable<U>[K_2]> extends (infer U)[] ? U extends object ? K_2 | `${K_2}[*]` | `${K_2}[*].${/*elided*/ any[keyof NonNullable<U> & string]}` : K_2 | `${K_2}[*]` : NonNullable<NonNullable<U>[K_2]> extends object ? K_2 | `${K_2}.${{ [K_6 in keyof NonNullable<NonNullable<U>[K_2]> & string]: NonNullable<NonNullable<NonNullable<U>[K_2]>[K_6]> extends (...args: any[]) => any ? never : NonNullable<NonNullable<NonNullable<U>[K_2]>[K_6]> extends (infer U)[] ? U extends object ? K_6 | `${K_6}[*]` | `${K_6}[*].${/*elided*/ any[keyof NonNullable<U> & string]}` : K_6 | `${K_6}[*]` : NonNullable<NonNullable<NonNullable<U>[K_2]>[K_6]> extends object ? K_6 | `${K_6}.${{ [K_7 in keyof NonNullable<NonNullable<NonNullable<U>[K_2]>[K_6]> & string]: NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_6]>[K_7]> extends (...args: any[]) => any ? never : NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_6]>[K_7]> extends (infer U)[] ? U extends object ? K_7 | `${K_7}[*]` | `${K_7}[*].${/*elided*/ any[keyof NonNullable<U> & string]}` : K_7 | `${K_7}[*]` : NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_6]>[K_7]> extends object ? K_7 | `${K_7}.${{ [K_8 in keyof NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_6]>[K_7]> & string]: NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_6]>[K_7]>[K_8]> extends (...args: any[]) => any ? never : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_6]>[K_7]>[K_8]> extends (infer U)[] ? U extends object ? K_8 | `${K_8}[*]` | `${K_8}[*].${/*elided*/ any[keyof NonNullable<U> & string]}` : K_8 | `${K_8}[*]` : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_6]>[K_7]>[K_8]> extends object ? K_8 | `${K_8}.${{ [K_9 in keyof NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_6]>[K_7]>[K_8]> & string]: NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_6]>[K_7]>[K_8]>[K_9]> extends (...args: any[]) => any ? never : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_6]>[K_7]>[K_8]>[K_9]> extends (infer U)[] ? U extends object ? K_9 | `${K_9}[*]` | `${K_9}[*].${/*elided*/ any[keyof NonNullable<U> & string]}` : K_9 | `${K_9}[*]` : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_6]>[K_7]>[K_8]>[K_9]> extends object ? K_9 | `${K_9}.${{ [K_10 in keyof NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_6]>[K_7]>[K_8]>[K_9]> & string]: NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_6]>[K_7]>[K_8]>[K_9]>[K_10]> extends (...args: any[]) => any ? never : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_6]>[K_7]>[K_8]>[K_9]>[K_10]> extends (infer U)[] ? U extends object ? K_10 | `${K_10}[*]` | `${K_10}[*].${/*elided*/ any[keyof NonNullable<U> & string]}` : K_10 | `${K_10}[*]` : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_6]>[K_7]>[K_8]>[K_9]>[K_10]> extends object ? K_10 | `${K_10}.${{ [K_11 in keyof NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_6]>[K_7]>[K_8]>[K_9]>[K_10]> & string]: NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_6]>[K_7]>[K_8]>[K_9]>[K_10]>[K_11]> extends (...args: any[]) => any ? never : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_6]>[K_7]>[K_8]>[K_9]>[K_10]>[K_11]> extends (infer U)[] ? U extends object ? K_11 | `${K_11}[*]` | `${K_11}[*].${/*elided*/ any[keyof NonNullable<U> & string]}` : K_11 | `${K_11}[*]` : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_6]>[K_7]>[K_8]>[K_9]>[K_10]>[K_11]> extends object ? K_11 | `${K_11}.${/*elided*/ any[keyof NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_6]>[K_7]>[K_8]>[K_9]>[K_10]>[K_11]> & string]}` : K_11; }[keyof NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_6]>[K_7]>[K_8]>[K_9]>[K_10]> & string]}` : K_10; }[keyof NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_6]>[K_7]>[K_8]>[K_9]> & string]}` : K_9; }[keyof NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_6]>[K_7]>[K_8]> & string]}` : K_8; }[keyof NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_6]>[K_7]> & string]}` : K_7; }[keyof NonNullable<NonNullable<NonNullable<U>[K_2]>[K_6]> & string]}` : K_6; }[keyof NonNullable<NonNullable<U>[K_2]> & string]}` : K_2; }[keyof NonNullable<U> & string]}` : K_5 | `${K_5}[*]` : NonNullable<NonNullable<NonNullable<NonNullable<TShape[K]>[K_3]>[K_4]>[K_5]> extends object ? K_5 | `${K_5}.${{ [K_6 in keyof NonNullable<NonNullable<NonNullable<NonNullable<TShape[K]>[K_3]>[K_4]>[K_5]> & string]: NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<TShape[K]>[K_3]>[K_4]>[K_5]>[K_6]> extends (...args: any[]) => any ? never : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<TShape[K]>[K_3]>[K_4]>[K_5]>[K_6]> extends (infer U)[] ? U extends object ? K_6 | `${K_6}[*]` | `${K_6}[*].${{ [K_2 in keyof NonNullable<U> & string]: NonNullable<NonNullable<U>[K_2]> extends (...args: any[]) => any ? never : NonNullable<NonNullable<U>[K_2]> extends (infer U)[] ? U extends object ? K_2 | `${K_2}[*]` | `${K_2}[*].${/*elided*/ any[keyof NonNullable<U> & string]}` : K_2 | `${K_2}[*]` : NonNullable<NonNullable<U>[K_2]> extends object ? K_2 | `${K_2}.${{ [K_7 in keyof NonNullable<NonNullable<U>[K_2]> & string]: NonNullable<NonNullable<NonNullable<U>[K_2]>[K_7]> extends (...args: any[]) => any ? never : NonNullable<NonNullable<NonNullable<U>[K_2]>[K_7]> extends (infer U)[] ? U extends object ? K_7 | `${K_7}[*]` | `${K_7}[*].${/*elided*/ any[keyof NonNullable<U> & string]}` : K_7 | `${K_7}[*]` : NonNullable<NonNullable<NonNullable<U>[K_2]>[K_7]> extends object ? K_7 | `${K_7}.${{ [K_8 in keyof NonNullable<NonNullable<NonNullable<U>[K_2]>[K_7]> & string]: NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_7]>[K_8]> extends (...args: any[]) => any ? never : NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_7]>[K_8]> extends (infer U)[] ? U extends object ? K_8 | `${K_8}[*]` | `${K_8}[*].${/*elided*/ any[keyof NonNullable<U> & string]}` : K_8 | `${K_8}[*]` : NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_7]>[K_8]> extends object ? K_8 | `${K_8}.${{ [K_9 in keyof NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_7]>[K_8]> & string]: NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_7]>[K_8]>[K_9]> extends (...args: any[]) => any ? never : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_7]>[K_8]>[K_9]> extends (infer U)[] ? U extends object ? K_9 | `${K_9}[*]` | `${K_9}[*].${/*elided*/ any[keyof NonNullable<U> & string]}` : K_9 | `${K_9}[*]` : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_7]>[K_8]>[K_9]> extends object ? K_9 | `${K_9}.${{ [K_10 in keyof NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_7]>[K_8]>[K_9]> & string]: NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_7]>[K_8]>[K_9]>[K_10]> extends (...args: any[]) => any ? never : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_7]>[K_8]>[K_9]>[K_10]> extends (infer U)[] ? U extends object ? K_10 | `${K_10}[*]` | `${K_10}[*].${/*elided*/ any[keyof NonNullable<U> & string]}` : K_10 | `${K_10}[*]` : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_7]>[K_8]>[K_9]>[K_10]> extends object ? K_10 | `${K_10}.${{ [K_11 in keyof NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_7]>[K_8]>[K_9]>[K_10]> & string]: NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_7]>[K_8]>[K_9]>[K_10]>[K_11]> extends (...args: any[]) => any ? never : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_7]>[K_8]>[K_9]>[K_10]>[K_11]> extends (infer U)[] ? U extends object ? K_11 | `${K_11}[*]` | `${K_11}[*].${/*elided*/ any[keyof NonNullable<U> & string]}` : K_11 | `${K_11}[*]` : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_7]>[K_8]>[K_9]>[K_10]>[K_11]> extends object ? K_11 | `${K_11}.${/*elided*/ any[keyof NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_7]>[K_8]>[K_9]>[K_10]>[K_11]> & string]}` : K_11; }[keyof NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_7]>[K_8]>[K_9]>[K_10]> & string]}` : K_10; }[keyof NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_7]>[K_8]>[K_9]> & string]}` : K_9; }[keyof NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_7]>[K_8]> & string]}` : K_8; }[keyof NonNullable<NonNullable<NonNullable<U>[K_2]>[K_7]> & string]}` : K_7; }[keyof NonNullable<NonNullable<U>[K_2]> & string]}` : K_2; }[keyof NonNullable<U> & string]}` : K_6 | `${K_6}[*]` : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<TShape[K]>[K_3]>[K_4]>[K_5]>[K_6]> extends object ? K_6 | `${K_6}.${{ [K_7 in keyof NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<TShape[K]>[K_3]>[K_4]>[K_5]>[K_6]> & string]: NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<TShape[K]>[K_3]>[K_4]>[K_5]>[K_6]>[K_7]> extends (...args: any[]) => any ? never : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<TShape[K]>[K_3]>[K_4]>[K_5]>[K_6]>[K_7]> extends (infer U)[] ? U extends object ? K_7 | `${K_7}[*]` | `${K_7}[*].${{ [K_2 in keyof NonNullable<U> & string]: NonNullable<NonNullable<U>[K_2]> extends (...args: any[]) => any ? never : NonNullable<NonNullable<U>[K_2]> extends (infer U)[] ? U extends object ? K_2 | `${K_2}[*]` | `${K_2}[*].${/*elided*/ any[keyof NonNullable<U> & string]}` : K_2 | `${K_2}[*]` : NonNullable<NonNullable<U>[K_2]> extends object ? K_2 | `${K_2}.${{ [K_8 in keyof NonNullable<NonNullable<U>[K_2]> & string]: NonNullable<NonNullable<NonNullable<U>[K_2]>[K_8]> extends (...args: any[]) => any ? never : NonNullable<NonNullable<NonNullable<U>[K_2]>[K_8]> extends (infer U)[] ? U extends object ? K_8 | `${K_8}[*]` | `${K_8}[*].${/*elided*/ any[keyof NonNullable<U> & string]}` : K_8 | `${K_8}[*]` : NonNullable<NonNullable<NonNullable<U>[K_2]>[K_8]> extends object ? K_8 | `${K_8}.${{ [K_9 in keyof NonNullable<NonNullable<NonNullable<U>[K_2]>[K_8]> & string]: NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_8]>[K_9]> extends (...args: any[]) => any ? never : NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_8]>[K_9]> extends (infer U)[] ? U extends object ? K_9 | `${K_9}[*]` | `${K_9}[*].${/*elided*/ any[keyof NonNullable<U> & string]}` : K_9 | `${K_9}[*]` : NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_8]>[K_9]> extends object ? K_9 | `${K_9}.${{ [K_10 in keyof NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_8]>[K_9]> & string]: NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_8]>[K_9]>[K_10]> extends (...args: any[]) => any ? never : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_8]>[K_9]>[K_10]> extends (infer U)[] ? U extends object ? K_10 | `${K_10}[*]` | `${K_10}[*].${/*elided*/ any[keyof NonNullable<U> & string]}` : K_10 | `${K_10}[*]` : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_8]>[K_9]>[K_10]> extends object ? K_10 | `${K_10}.${{ [K_11 in keyof NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_8]>[K_9]>[K_10]> & string]: NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_8]>[K_9]>[K_10]>[K_11]> extends (...args: any[]) => any ? never : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_8]>[K_9]>[K_10]>[K_11]> extends (infer U)[] ? U extends object ? K_11 | `${K_11}[*]` | `${K_11}[*].${/*elided*/ any[keyof NonNullable<U> & string]}` : K_11 | `${K_11}[*]` : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_8]>[K_9]>[K_10]>[K_11]> extends object ? K_11 | `${K_11}.${/*elided*/ any[keyof NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_8]>[K_9]>[K_10]>[K_11]> & string]}` : K_11; }[keyof NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_8]>[K_9]>[K_10]> & string]}` : K_10; }[keyof NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_8]>[K_9]> & string]}` : K_9; }[keyof NonNullable<NonNullable<NonNullable<U>[K_2]>[K_8]> & string]}` : K_8; }[keyof NonNullable<NonNullable<U>[K_2]> & string]}` : K_2; }[keyof NonNullable<U> & string]}` : K_7 | `${K_7}[*]` : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<TShape[K]>[K_3]>[K_4]>[K_5]>[K_6]>[K_7]> extends object ? K_7 | `${K_7}.${{ [K_8 in keyof NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<TShape[K]>[K_3]>[K_4]>[K_5]>[K_6]>[K_7]> & string]: NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<TShape[K]>[K_3]>[K_4]>[K_5]>[K_6]>[K_7]>[K_8]> extends (...args: any[]) => any ? never : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<TShape[K]>[K_3]>[K_4]>[K_5]>[K_6]>[K_7]>[K_8]> extends (infer U)[] ? U extends object ? K_8 | `${K_8}[*]` | `${K_8}[*].${{ [K_2 in keyof NonNullable<U> & string]: NonNullable<NonNullable<U>[K_2]> extends (...args: any[]) => any ? never : NonNullable<NonNullable<U>[K_2]> extends (infer U)[] ? U extends object ? K_2 | `${K_2}[*]` | `${K_2}[*].${/*elided*/ any[keyof NonNullable<U> & string]}` : K_2 | `${K_2}[*]` : NonNullable<NonNullable<U>[K_2]> extends object ? K_2 | `${K_2}.${{ [K_9 in keyof NonNullable<NonNullable<U>[K_2]> & string]: NonNullable<NonNullable<NonNullable<U>[K_2]>[K_9]> extends (...args: any[]) => any ? never : NonNullable<NonNullable<NonNullable<U>[K_2]>[K_9]> extends (infer U)[] ? U extends object ? K_9 | `${K_9}[*]` | `${K_9}[*].${/*elided*/ any[keyof NonNullable<U> & string]}` : K_9 | `${K_9}[*]` : NonNullable<NonNullable<NonNullable<U>[K_2]>[K_9]> extends object ? K_9 | `${K_9}.${{ [K_10 in keyof NonNullable<NonNullable<NonNullable<U>[K_2]>[K_9]> & string]: NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_9]>[K_10]> extends (...args: any[]) => any ? never : NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_9]>[K_10]> extends (infer U)[] ? U extends object ? K_10 | `${K_10}[*]` | `${K_10}[*].${/*elided*/ any[keyof NonNullable<U> & string]}` : K_10 | `${K_10}[*]` : NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_9]>[K_10]> extends object ? K_10 | `${K_10}.${{ [K_11 in keyof NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_9]>[K_10]> & string]: NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_9]>[K_10]>[K_11]> extends (...args: any[]) => any ? never : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_9]>[K_10]>[K_11]> extends (infer U)[] ? U extends object ? K_11 | `${K_11}[*]` | `${K_11}[*].${/*elided*/ any[keyof NonNullable<U> & string]}` : K_11 | `${K_11}[*]` : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_9]>[K_10]>[K_11]> extends object ? K_11 | `${K_11}.${/*elided*/ any[keyof NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_9]>[K_10]>[K_11]> & string]}` : K_11; }[keyof NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_9]>[K_10]> & string]}` : K_10; }[keyof NonNullable<NonNullable<NonNullable<U>[K_2]>[K_9]> & string]}` : K_9; }[keyof NonNullable<NonNullable<U>[K_2]> & string]}` : K_2; }[keyof NonNullable<U> & string]}` : K_8 | `${K_8}[*]` : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<TShape[K]>[K_3]>[K_4]>[K_5]>[K_6]>[K_7]>[K_8]> extends object ? K_8 | `${K_8}.${{ [K_9 in keyof NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<TShape[K]>[K_3]>[K_4]>[K_5]>[K_6]>[K_7]>[K_8]> & string]: NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<TShape[K]>[K_3]>[K_4]>[K_5]>[K_6]>[K_7]>[K_8]>[K_9]> extends (...args: any[]) => any ? never : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<TShape[K]>[K_3]>[K_4]>[K_5]>[K_6]>[K_7]>[K_8]>[K_9]> extends (infer U)[] ? U extends object ? K_9 | `${K_9}[*]` | `${K_9}[*].${{ [K_2 in keyof NonNullable<U> & string]: NonNullable<NonNullable<U>[K_2]> extends (...args: any[]) => any ? never : NonNullable<NonNullable<U>[K_2]> extends (infer U)[] ? U extends object ? K_2 | `${K_2}[*]` | `${K_2}[*].${/*elided*/ any[keyof NonNullable<U> & string]}` : K_2 | `${K_2}[*]` : NonNullable<NonNullable<U>[K_2]> extends object ? K_2 | `${K_2}.${{ [K_10 in keyof NonNullable<NonNullable<U>[K_2]> & string]: NonNullable<NonNullable<NonNullable<U>[K_2]>[K_10]> extends (...args: any[]) => any ? never : NonNullable<NonNullable<NonNullable<U>[K_2]>[K_10]> extends (infer U)[] ? U extends object ? K_10 | `${K_10}[*]` | `${K_10}[*].${/*elided*/ any[keyof NonNullable<U> & string]}` : K_10 | `${K_10}[*]` : NonNullable<NonNullable<NonNullable<U>[K_2]>[K_10]> extends object ? K_10 | `${K_10}.${{ [K_11 in keyof NonNullable<NonNullable<NonNullable<U>[K_2]>[K_10]> & string]: NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_10]>[K_11]> extends (...args: any[]) => any ? never : NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_10]>[K_11]> extends (infer U)[] ? U extends object ? K_11 | `${K_11}[*]` | `${K_11}[*].${/*elided*/ any[keyof NonNullable<U> & string]}` : K_11 | `${K_11}[*]` : NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_10]>[K_11]> extends object ? K_11 | `${K_11}.${/*elided*/ any[keyof NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_10]>[K_11]> & string]}` : K_11; }[keyof NonNullable<NonNullable<NonNullable<U>[K_2]>[K_10]> & string]}` : K_10; }[keyof NonNullable<NonNullable<U>[K_2]> & string]}` : K_2; }[keyof NonNullable<U> & string]}` : K_9 | `${K_9}[*]` : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<TShape[K]>[K_3]>[K_4]>[K_5]>[K_6]>[K_7]>[K_8]>[K_9]> extends object ? K_9 | `${K_9}.${{ [K_10 in keyof NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<TShape[K]>[K_3]>[K_4]>[K_5]>[K_6]>[K_7]>[K_8]>[K_9]> & string]: NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<TShape[K]>[K_3]>[K_4]>[K_5]>[K_6]>[K_7]>[K_8]>[K_9]>[K_10]> extends (...args: any[]) => any ? never : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<TShape[K]>[K_3]>[K_4]>[K_5]>[K_6]>[K_7]>[K_8]>[K_9]>[K_10]> extends (infer U)[] ? U extends object ? K_10 | `${K_10}[*]` | `${K_10}[*].${{ [K_2 in keyof NonNullable<U> & string]: NonNullable<NonNullable<U>[K_2]> extends (...args: any[]) => any ? never : NonNullable<NonNullable<U>[K_2]> extends (infer U)[] ? U extends object ? K_2 | `${K_2}[*]` | `${K_2}[*].${/*elided*/ any[keyof NonNullable<U> & string]}` : K_2 | `${K_2}[*]` : NonNullable<NonNullable<U>[K_2]> extends object ? K_2 | `${K_2}.${{ [K_11 in keyof NonNullable<NonNullable<U>[K_2]> & string]: NonNullable<NonNullable<NonNullable<U>[K_2]>[K_11]> extends (...args: any[]) => any ? never : NonNullable<NonNullable<NonNullable<U>[K_2]>[K_11]> extends (infer U)[] ? U extends object ? K_11 | `${K_11}[*]` | `${K_11}[*].${/*elided*/ any[keyof NonNullable<U> & string]}` : K_11 | `${K_11}[*]` : NonNullable<NonNullable<NonNullable<U>[K_2]>[K_11]> extends object ? K_11 | `${K_11}.${/*elided*/ any[keyof NonNullable<NonNullable<NonNullable<U>[K_2]>[K_11]> & string]}` : K_11; }[keyof NonNullable<NonNullable<U>[K_2]> & string]}` : K_2; }[keyof NonNullable<U> & string]}` : K_10 | `${K_10}[*]` : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<TShape[K]>[K_3]>[K_4]>[K_5]>[K_6]>[K_7]>[K_8]>[K_9]>[K_10]> extends object ? K_10 | `${K_10}.${{ [K_11 in keyof NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<TShape[K]>[K_3]>[K_4]>[K_5]>[K_6]>[K_7]>[K_8]>[K_9]>[K_10]> & string]: NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<TShape[K]>[K_3]>[K_4]>[K_5]>[K_6]>[K_7]>[K_8]>[K_9]>[K_10]>[K_11]> extends (...args: any[]) => any ? never : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<TShape[K]>[K_3]>[K_4]>[K_5]>[K_6]>[K_7]>[K_8]>[K_9]>[K_10]>[K_11]> extends (infer U)[] ? U extends object ? K_11 | `${K_11}[*]` | `${K_11}[*].${{ [K_2 in keyof NonNullable<U> & string]: NonNullable<NonNullable<U>[K_2]> extends (...args: any[]) => any ? never : NonNullable<NonNullable<U>[K_2]> extends (infer U)[] ? U extends object ? K_2 | `${K_2}[*]` | `${K_2}[*].${/*elided*/ any[keyof NonNullable<U> & string]}` : K_2 | `${K_2}[*]` : NonNullable<NonNullable<U>[K_2]> extends object ? K_2 | `${K_2}.${/*elided*/ any[keyof NonNullable<NonNullable<U>[K_2]> & string]}` : K_2; }[keyof NonNullable<U> & string]}` : K_11 | `${K_11}[*]` : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<TShape[K]>[K_3]>[K_4]>[K_5]>[K_6]>[K_7]>[K_8]>[K_9]>[K_10]>[K_11]> extends object ? K_11 | `${K_11}.${{ [K_12 in keyof NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<TShape[K]>[K_3]>[K_4]>[K_5]>[K_6]>[K_7]>[K_8]>[K_9]>[K_10]>[K_11]> & string]: NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<TShape[K]>[K_3]>[K_4]>[K_5]>[K_6]>[K_7]>[K_8]>[K_9]>[K_10]>[K_11]>[K_12]> extends (...args: any[]) => any ? never : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<TShape[K]>[K_3]>[K_4]>[K_5]>[K_6]>[K_7]>[K_8]>[K_9]>[K_10]>[K_11]>[K_12]> extends (infer U)[] ? U extends object ? K_12 | `${K_12}[*]` | `${K_12}[*].${/*elided*/ any[keyof NonNullable<U> & string]}` : K_12 | `${K_12}[*]` : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<TShape[K]>[K_3]>[K_4]>[K_5]>[K_6]>[K_7]>[K_8]>[K_9]>[K_10]>[K_11]>[K_12]> extends object ? K_12 | `${K_12}.${/*elided*/ any[keyof NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<TShape[K]>[K_3]>[K_4]>[K_5]>[K_6]>[K_7]>[K_8]>[K_9]>[K_10]>[K_11]>[K_12]> & string]}` : K_12; }[keyof NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<TShape[K]>[K_3]>[K_4]>[K_5]>[K_6]>[K_7]>[K_8]>[K_9]>[K_10]>[K_11]> & string]}` : K_11; }[keyof NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<TShape[K]>[K_3]>[K_4]>[K_5]>[K_6]>[K_7]>[K_8]>[K_9]>[K_10]> & string]}` : K_10; }[keyof NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<TShape[K]>[K_3]>[K_4]>[K_5]>[K_6]>[K_7]>[K_8]>[K_9]> & string]}` : K_9; }[keyof NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<TShape[K]>[K_3]>[K_4]>[K_5]>[K_6]>[K_7]>[K_8]> & string]}` : K_8; }[keyof NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<TShape[K]>[K_3]>[K_4]>[K_5]>[K_6]>[K_7]> & string]}` : K_7; }[keyof NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<TShape[K]>[K_3]>[K_4]>[K_5]>[K_6]> & string]}` : K_6; }[keyof NonNullable<NonNullable<NonNullable<NonNullable<TShape[K]>[K_3]>[K_4]>[K_5]> & string]}` : K_5; }[keyof NonNullable<NonNullable<NonNullable<TShape[K]>[K_3]>[K_4]> & string]}` : K_4; }[keyof NonNullable<NonNullable<TShape[K]>[K_3]> & string]}` : K_3; }[keyof NonNullable<TShape[K]> & string]}` : K; }[keyof TShape & string] extends infer T ? T extends { [K in keyof TShape & string]: NonNullable<TShape[K]> extends (...args: any[]) => any ? never : NonNullable<TShape[K]> extends (infer U)[] ? U extends object ? K | `${K}[*]` | `${K}[*].${{ [K_2 in keyof NonNullable<U> & string]: NonNullable<NonNullable<U>[K_2]> extends (...args: any[]) => any ? never : NonNullable<NonNullable<U>[K_2]> extends (infer U)[] ? U extends object ? K_2 | `${K_2}[*]` | `${K_2}[*].${/*elided*/ any[keyof NonNullable<U> & string]}` : K_2 | `${K_2}[*]` : NonNullable<NonNullable<U>[K_2]> extends object ? K_2 | `${K_2}.${{ [K_3 in keyof NonNullable<NonNullable<U>[K_2]> & string]: NonNullable<NonNullable<NonNullable<U>[K_2]>[K_3]> extends (...args: any[]) => any ? never : NonNullable<NonNullable<NonNullable<U>[K_2]>[K_3]> extends (infer U)[] ? U extends object ? K_3 | `${K_3}[*]` | `${K_3}[*].${/*elided*/ any[keyof NonNullable<U> & string]}` : K_3 | `${K_3}[*]` : NonNullable<NonNullable<NonNullable<U>[K_2]>[K_3]> extends object ? K_3 | `${K_3}.${{ [K_4 in keyof NonNullable<NonNullable<NonNullable<U>[K_2]>[K_3]> & string]: NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_3]>[K_4]> extends (...args: any[]) => any ? never : NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_3]>[K_4]> extends (infer U)[] ? U extends object ? K_4 | `${K_4}[*]` | `${K_4}[*].${/*elided*/ any[keyof NonNullable<U> & string]}` : K_4 | `${K_4}[*]` : NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_3]>[K_4]> extends object ? K_4 | `${K_4}.${{ [K_5 in keyof NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_3]>[K_4]> & string]: NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_3]>[K_4]>[K_5]> extends (...args: any[]) => any ? never : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_3]>[K_4]>[K_5]> extends (infer U)[] ? U extends object ? K_5 | `${K_5}[*]` | `${K_5}[*].${/*elided*/ any[keyof NonNullable<U> & string]}` : K_5 | `${K_5}[*]` : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_3]>[K_4]>[K_5]> extends object ? K_5 | `${K_5}.${{ [K_6 in keyof NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_3]>[K_4]>[K_5]> & string]: NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_3]>[K_4]>[K_5]>[K_6]> extends (...args: any[]) => any ? never : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_3]>[K_4]>[K_5]>[K_6]> extends (infer U)[] ? U extends object ? K_6 | `${K_6}[*]` | `${K_6}[*].${/*elided*/ any[keyof NonNullable<U> & string]}` : K_6 | `${K_6}[*]` : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_3]>[K_4]>[K_5]>[K_6]> extends object ? K_6 | `${K_6}.${{ [K_7 in keyof NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_3]>[K_4]>[K_5]>[K_6]> & string]: NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_3]>[K_4]>[K_5]>[K_6]>[K_7]> extends (...args: any[]) => any ? never : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_3]>[K_4]>[K_5]>[K_6]>[K_7]> extends (infer U)[] ? U extends object ? K_7 | `${K_7}[*]` | `${K_7}[*].${/*elided*/ any[keyof NonNullable<U> & string]}` : K_7 | `${K_7}[*]` : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_3]>[K_4]>[K_5]>[K_6]>[K_7]> extends object ? K_7 | `${K_7}.${{ [K_8 in keyof NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_3]>[K_4]>[K_5]>[K_6]>[K_7]> & string]: NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_3]>[K_4]>[K_5]>[K_6]>[K_7]>[K_8]> extends (...args: any[]) => any ? never : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_3]>[K_4]>[K_5]>[K_6]>[K_7]>[K_8]> extends (infer U)[] ? U extends object ? K_8 | `${K_8}[*]` | `${K_8}[*].${/*elided*/ any[keyof NonNullable<U> & string]}` : K_8 | `${K_8}[*]` : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_3]>[K_4]>[K_5]>[K_6]>[K_7]>[K_8]> extends object ? K_8 | `${K_8}.${{ [K_9 in keyof NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_3]>[K_4]>[K_5]>[K_6]>[K_7]>[K_8]> & string]: NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_3]>[K_4]>[K_5]>[K_6]>[K_7]>[K_8]>[K_9]> extends (...args: any[]) => any ? never : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_3]>[K_4]>[K_5]>[K_6]>[K_7]>[K_8]>[K_9]> extends (infer U)[] ? U extends object ? K_9 | `${K_9}[*]` | `${K_9}[*].${/*elided*/ any[keyof NonNullable<U> & string]}` : K_9 | `${K_9}[*]` : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_3]>[K_4]>[K_5]>[K_6]>[K_7]>[K_8]>[K_9]> extends object ? K_9 | `${K_9}.${{ [K_10 in keyof NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_3]>[K_4]>[K_5]>[K_6]>[K_7]>[K_8]>[K_9]> & string]: NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_3]>[K_4]>[K_5]>[K_6]>[K_7]>[K_8]>[K_9]>[K_10]> extends (...args: any[]) => any ? never : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_3]>[K_4]>[K_5]>[K_6]>[K_7]>[K_8]>[K_9]>[K_10]> extends (infer U)[] ? U extends object ? K_10 | `${K_10}[*]` | `${K_10}[*].${/*elided*/ any[keyof NonNullable<U> & string]}` : K_10 | `${K_10}[*]` : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_3]>[K_4]>[K_5]>[K_6]>[K_7]>[K_8]>[K_9]>[K_10]> extends object ? K_10 | `${K_10}.${{ [K_11 in keyof NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_3]>[K_4]>[K_5]>[K_6]>[K_7]>[K_8]>[K_9]>[K_10]> & string]: NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_3]>[K_4]>[K_5]>[K_6]>[K_7]>[K_8]>[K_9]>[K_10]>[K_11]> extends (...args: any[]) => any ? never : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_3]>[K_4]>[K_5]>[K_6]>[K_7]>[K_8]>[K_9]>[K_10]>[K_11]> extends (infer U)[] ? U extends object ? K_11 | `${K_11}[*]` | `${K_11}[*].${/*elided*/ any[keyof NonNullable<U> & string]}` : K_11 | `${K_11}[*]` : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_3]>[K_4]>[K_5]>[K_6]>[K_7]>[K_8]>[K_9]>[K_10]>[K_11]> extends object ? K_11 | `${K_11}.${/*elided*/ any[keyof NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_3]>[K_4]>[K_5]>[K_6]>[K_7]>[K_8]>[K_9]>[K_10]>[K_11]> & string]}` : K_11; }[keyof NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_3]>[K_4]>[K_5]>[K_6]>[K_7]>[K_8]>[K_9]>[K_10]> & string]}` : K_10; }[keyof NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_3]>[K_4]>[K_5]>[K_6]>[K_7]>[K_8]>[K_9]> & string]}` : K_9; }[keyof NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_3]>[K_4]>[K_5]>[K_6]>[K_7]>[K_8]> & string]}` : K_8; }[keyof NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_3]>[K_4]>[K_5]>[K_6]>[K_7]> & string]}` : K_7; }[keyof NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_3]>[K_4]>[K_5]>[K_6]> & string]}` : K_6; }[keyof NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_3]>[K_4]>[K_5]> & string]}` : K_5; }[keyof NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_3]>[K_4]> & string]}` : K_4; }[keyof NonNullable<NonNullable<NonNullable<U>[K_2]>[K_3]> & string]}` : K_3; }[keyof NonNullable<NonNullable<U>[K_2]> & string]}` : K_2; }[keyof NonNullable<U> & string]}` : K | `${K}[*]` : NonNullable<TShape[K]> extends object ? K | `${K}.${{ [K_3 in keyof NonNullable<TShape[K]> & string]: NonNullable<NonNullable<TShape[K]>[K_3]> extends (...args: any[]) => any ? never : NonNullable<NonNullable<TShape[K]>[K_3]> extends (infer U)[] ? U extends object ? K_3 | `${K_3}[*]` | `${K_3}[*].${{ [K_2 in keyof NonNullable<U> & string]: NonNullable<NonNullable<U>[K_2]> extends (...args: any[]) => any ? never : NonNullable<NonNullable<U>[K_2]> extends (infer U)[] ? U extends object ? K_2 | `${K_2}[*]` | `${K_2}[*].${/*elided*/ any[keyof NonNullable<U> & string]}` : K_2 | `${K_2}[*]` : NonNullable<NonNullable<U>[K_2]> extends object ? K_2 | `${K_2}.${{ [K_4 in keyof NonNullable<NonNullable<U>[K_2]> & string]: NonNullable<NonNullable<NonNullable<U>[K_2]>[K_4]> extends (...args: any[]) => any ? never : NonNullable<NonNullable<NonNullable<U>[K_2]>[K_4]> extends (infer U)[] ? U extends object ? K_4 | `${K_4}[*]` | `${K_4}[*].${/*elided*/ any[keyof NonNullable<U> & string]}` : K_4 | `${K_4}[*]` : NonNullable<NonNullable<NonNullable<U>[K_2]>[K_4]> extends object ? K_4 | `${K_4}.${{ [K_5 in keyof NonNullable<NonNullable<NonNullable<U>[K_2]>[K_4]> & string]: NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_4]>[K_5]> extends (...args: any[]) => any ? never : NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_4]>[K_5]> extends (infer U)[] ? U extends object ? K_5 | `${K_5}[*]` | `${K_5}[*].${/*elided*/ any[keyof NonNullable<U> & string]}` : K_5 | `${K_5}[*]` : NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_4]>[K_5]> extends object ? K_5 | `${K_5}.${{ [K_6 in keyof NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_4]>[K_5]> & string]: NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_4]>[K_5]>[K_6]> extends (...args: any[]) => any ? never : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_4]>[K_5]>[K_6]> extends (infer U)[] ? U extends object ? K_6 | `${K_6}[*]` | `${K_6}[*].${/*elided*/ any[keyof NonNullable<U> & string]}` : K_6 | `${K_6}[*]` : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_4]>[K_5]>[K_6]> extends object ? K_6 | `${K_6}.${{ [K_7 in keyof NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_4]>[K_5]>[K_6]> & string]: NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_4]>[K_5]>[K_6]>[K_7]> extends (...args: any[]) => any ? never : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_4]>[K_5]>[K_6]>[K_7]> extends (infer U)[] ? U extends object ? K_7 | `${K_7}[*]` | `${K_7}[*].${/*elided*/ any[keyof NonNullable<U> & string]}` : K_7 | `${K_7}[*]` : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_4]>[K_5]>[K_6]>[K_7]> extends object ? K_7 | `${K_7}.${{ [K_8 in keyof NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_4]>[K_5]>[K_6]>[K_7]> & string]: NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_4]>[K_5]>[K_6]>[K_7]>[K_8]> extends (...args: any[]) => any ? never : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_4]>[K_5]>[K_6]>[K_7]>[K_8]> extends (infer U)[] ? U extends object ? K_8 | `${K_8}[*]` | `${K_8}[*].${/*elided*/ any[keyof NonNullable<U> & string]}` : K_8 | `${K_8}[*]` : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_4]>[K_5]>[K_6]>[K_7]>[K_8]> extends object ? K_8 | `${K_8}.${{ [K_9 in keyof NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_4]>[K_5]>[K_6]>[K_7]>[K_8]> & string]: NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_4]>[K_5]>[K_6]>[K_7]>[K_8]>[K_9]> extends (...args: any[]) => any ? never : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_4]>[K_5]>[K_6]>[K_7]>[K_8]>[K_9]> extends (infer U)[] ? U extends object ? K_9 | `${K_9}[*]` | `${K_9}[*].${/*elided*/ any[keyof NonNullable<U> & string]}` : K_9 | `${K_9}[*]` : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_4]>[K_5]>[K_6]>[K_7]>[K_8]>[K_9]> extends object ? K_9 | `${K_9}.${{ [K_10 in keyof NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_4]>[K_5]>[K_6]>[K_7]>[K_8]>[K_9]> & string]: NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_4]>[K_5]>[K_6]>[K_7]>[K_8]>[K_9]>[K_10]> extends (...args: any[]) => any ? never : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_4]>[K_5]>[K_6]>[K_7]>[K_8]>[K_9]>[K_10]> extends (infer U)[] ? U extends object ? K_10 | `${K_10}[*]` | `${K_10}[*].${/*elided*/ any[keyof NonNullable<U> & string]}` : K_10 | `${K_10}[*]` : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_4]>[K_5]>[K_6]>[K_7]>[K_8]>[K_9]>[K_10]> extends object ? K_10 | `${K_10}.${{ [K_11 in keyof NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_4]>[K_5]>[K_6]>[K_7]>[K_8]>[K_9]>[K_10]> & string]: NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_4]>[K_5]>[K_6]>[K_7]>[K_8]>[K_9]>[K_10]>[K_11]> extends (...args: any[]) => any ? never : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_4]>[K_5]>[K_6]>[K_7]>[K_8]>[K_9]>[K_10]>[K_11]> extends (infer U)[] ? U extends object ? K_11 | `${K_11}[*]` | `${K_11}[*].${/*elided*/ any[keyof NonNullable<U> & string]}` : K_11 | `${K_11}[*]` : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_4]>[K_5]>[K_6]>[K_7]>[K_8]>[K_9]>[K_10]>[K_11]> extends object ? K_11 | `${K_11}.${/*elided*/ any[keyof NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_4]>[K_5]>[K_6]>[K_7]>[K_8]>[K_9]>[K_10]>[K_11]> & string]}` : K_11; }[keyof NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_4]>[K_5]>[K_6]>[K_7]>[K_8]>[K_9]>[K_10]> & string]}` : K_10; }[keyof NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_4]>[K_5]>[K_6]>[K_7]>[K_8]>[K_9]> & string]}` : K_9; }[keyof NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_4]>[K_5]>[K_6]>[K_7]>[K_8]> & string]}` : K_8; }[keyof NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_4]>[K_5]>[K_6]>[K_7]> & string]}` : K_7; }[keyof NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_4]>[K_5]>[K_6]> & string]}` : K_6; }[keyof NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_4]>[K_5]> & string]}` : K_5; }[keyof NonNullable<NonNullable<NonNullable<U>[K_2]>[K_4]> & string]}` : K_4; }[keyof NonNullable<NonNullable<U>[K_2]> & string]}` : K_2; }[keyof NonNullable<U> & string]}` : K_3 | `${K_3}[*]` : NonNullable<NonNullable<TShape[K]>[K_3]> extends object ? K_3 | `${K_3}.${{ [K_4 in keyof NonNullable<NonNullable<TShape[K]>[K_3]> & string]: NonNullable<NonNullable<NonNullable<TShape[K]>[K_3]>[K_4]> extends (...args: any[]) => any ? never : NonNullable<NonNullable<NonNullable<TShape[K]>[K_3]>[K_4]> extends (infer U)[] ? U extends object ? K_4 | `${K_4}[*]` | `${K_4}[*].${{ [K_2 in keyof NonNullable<U> & string]: NonNullable<NonNullable<U>[K_2]> extends (...args: any[]) => any ? never : NonNullable<NonNullable<U>[K_2]> extends (infer U)[] ? U extends object ? K_2 | `${K_2}[*]` | `${K_2}[*].${/*elided*/ any[keyof NonNullable<U> & string]}` : K_2 | `${K_2}[*]` : NonNullable<NonNullable<U>[K_2]> extends object ? K_2 | `${K_2}.${{ [K_5 in keyof NonNullable<NonNullable<U>[K_2]> & string]: NonNullable<NonNullable<NonNullable<U>[K_2]>[K_5]> extends (...args: any[]) => any ? never : NonNullable<NonNullable<NonNullable<U>[K_2]>[K_5]> extends (infer U)[] ? U extends object ? K_5 | `${K_5}[*]` | `${K_5}[*].${/*elided*/ any[keyof NonNullable<U> & string]}` : K_5 | `${K_5}[*]` : NonNullable<NonNullable<NonNullable<U>[K_2]>[K_5]> extends object ? K_5 | `${K_5}.${{ [K_6 in keyof NonNullable<NonNullable<NonNullable<U>[K_2]>[K_5]> & string]: NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_5]>[K_6]> extends (...args: any[]) => any ? never : NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_5]>[K_6]> extends (infer U)[] ? U extends object ? K_6 | `${K_6}[*]` | `${K_6}[*].${/*elided*/ any[keyof NonNullable<U> & string]}` : K_6 | `${K_6}[*]` : NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_5]>[K_6]> extends object ? K_6 | `${K_6}.${{ [K_7 in keyof NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_5]>[K_6]> & string]: NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_5]>[K_6]>[K_7]> extends (...args: any[]) => any ? never : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_5]>[K_6]>[K_7]> extends (infer U)[] ? U extends object ? K_7 | `${K_7}[*]` | `${K_7}[*].${/*elided*/ any[keyof NonNullable<U> & string]}` : K_7 | `${K_7}[*]` : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_5]>[K_6]>[K_7]> extends object ? K_7 | `${K_7}.${{ [K_8 in keyof NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_5]>[K_6]>[K_7]> & string]: NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_5]>[K_6]>[K_7]>[K_8]> extends (...args: any[]) => any ? never : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_5]>[K_6]>[K_7]>[K_8]> extends (infer U)[] ? U extends object ? K_8 | `${K_8}[*]` | `${K_8}[*].${/*elided*/ any[keyof NonNullable<U> & string]}` : K_8 | `${K_8}[*]` : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_5]>[K_6]>[K_7]>[K_8]> extends object ? K_8 | `${K_8}.${{ [K_9 in keyof NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_5]>[K_6]>[K_7]>[K_8]> & string]: NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_5]>[K_6]>[K_7]>[K_8]>[K_9]> extends (...args: any[]) => any ? never : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_5]>[K_6]>[K_7]>[K_8]>[K_9]> extends (infer U)[] ? U extends object ? K_9 | `${K_9}[*]` | `${K_9}[*].${/*elided*/ any[keyof NonNullable<U> & string]}` : K_9 | `${K_9}[*]` : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_5]>[K_6]>[K_7]>[K_8]>[K_9]> extends object ? K_9 | `${K_9}.${{ [K_10 in keyof NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_5]>[K_6]>[K_7]>[K_8]>[K_9]> & string]: NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_5]>[K_6]>[K_7]>[K_8]>[K_9]>[K_10]> extends (...args: any[]) => any ? never : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_5]>[K_6]>[K_7]>[K_8]>[K_9]>[K_10]> extends (infer U)[] ? U extends object ? K_10 | `${K_10}[*]` | `${K_10}[*].${/*elided*/ any[keyof NonNullable<U> & string]}` : K_10 | `${K_10}[*]` : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_5]>[K_6]>[K_7]>[K_8]>[K_9]>[K_10]> extends object ? K_10 | `${K_10}.${{ [K_11 in keyof NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_5]>[K_6]>[K_7]>[K_8]>[K_9]>[K_10]> & string]: NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_5]>[K_6]>[K_7]>[K_8]>[K_9]>[K_10]>[K_11]> extends (...args: any[]) => any ? never : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_5]>[K_6]>[K_7]>[K_8]>[K_9]>[K_10]>[K_11]> extends (infer U)[] ? U extends object ? K_11 | `${K_11}[*]` | `${K_11}[*].${/*elided*/ any[keyof NonNullable<U> & string]}` : K_11 | `${K_11}[*]` : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_5]>[K_6]>[K_7]>[K_8]>[K_9]>[K_10]>[K_11]> extends object ? K_11 | `${K_11}.${/*elided*/ any[keyof NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_5]>[K_6]>[K_7]>[K_8]>[K_9]>[K_10]>[K_11]> & string]}` : K_11; }[keyof NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_5]>[K_6]>[K_7]>[K_8]>[K_9]>[K_10]> & string]}` : K_10; }[keyof NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_5]>[K_6]>[K_7]>[K_8]>[K_9]> & string]}` : K_9; }[keyof NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_5]>[K_6]>[K_7]>[K_8]> & string]}` : K_8; }[keyof NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_5]>[K_6]>[K_7]> & string]}` : K_7; }[keyof NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_5]>[K_6]> & string]}` : K_6; }[keyof NonNullable<NonNullable<NonNullable<U>[K_2]>[K_5]> & string]}` : K_5; }[keyof NonNullable<NonNullable<U>[K_2]> & string]}` : K_2; }[keyof NonNullable<U> & string]}` : K_4 | `${K_4}[*]` : NonNullable<NonNullable<NonNullable<TShape[K]>[K_3]>[K_4]> extends object ? K_4 | `${K_4}.${{ [K_5 in keyof NonNullable<NonNullable<NonNullable<TShape[K]>[K_3]>[K_4]> & string]: NonNullable<NonNullable<NonNullable<NonNullable<TShape[K]>[K_3]>[K_4]>[K_5]> extends (...args: any[]) => any ? never : NonNullable<NonNullable<NonNullable<NonNullable<TShape[K]>[K_3]>[K_4]>[K_5]> extends (infer U)[] ? U extends object ? K_5 | `${K_5}[*]` | `${K_5}[*].${{ [K_2 in keyof NonNullable<U> & string]: NonNullable<NonNullable<U>[K_2]> extends (...args: any[]) => any ? never : NonNullable<NonNullable<U>[K_2]> extends (infer U)[] ? U extends object ? K_2 | `${K_2}[*]` | `${K_2}[*].${/*elided*/ any[keyof NonNullable<U> & string]}` : K_2 | `${K_2}[*]` : NonNullable<NonNullable<U>[K_2]> extends object ? K_2 | `${K_2}.${{ [K_6 in keyof NonNullable<NonNullable<U>[K_2]> & string]: NonNullable<NonNullable<NonNullable<U>[K_2]>[K_6]> extends (...args: any[]) => any ? never : NonNullable<NonNullable<NonNullable<U>[K_2]>[K_6]> extends (infer U)[] ? U extends object ? K_6 | `${K_6}[*]` | `${K_6}[*].${/*elided*/ any[keyof NonNullable<U> & string]}` : K_6 | `${K_6}[*]` : NonNullable<NonNullable<NonNullable<U>[K_2]>[K_6]> extends object ? K_6 | `${K_6}.${{ [K_7 in keyof NonNullable<NonNullable<NonNullable<U>[K_2]>[K_6]> & string]: NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_6]>[K_7]> extends (...args: any[]) => any ? never : NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_6]>[K_7]> extends (infer U)[] ? U extends object ? K_7 | `${K_7}[*]` | `${K_7}[*].${/*elided*/ any[keyof NonNullable<U> & string]}` : K_7 | `${K_7}[*]` : NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_6]>[K_7]> extends object ? K_7 | `${K_7}.${{ [K_8 in keyof NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_6]>[K_7]> & string]: NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_6]>[K_7]>[K_8]> extends (...args: any[]) => any ? never : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_6]>[K_7]>[K_8]> extends (infer U)[] ? U extends object ? K_8 | `${K_8}[*]` | `${K_8}[*].${/*elided*/ any[keyof NonNullable<U> & string]}` : K_8 | `${K_8}[*]` : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_6]>[K_7]>[K_8]> extends object ? K_8 | `${K_8}.${{ [K_9 in keyof NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_6]>[K_7]>[K_8]> & string]: NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_6]>[K_7]>[K_8]>[K_9]> extends (...args: any[]) => any ? never : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_6]>[K_7]>[K_8]>[K_9]> extends (infer U)[] ? U extends object ? K_9 | `${K_9}[*]` | `${K_9}[*].${/*elided*/ any[keyof NonNullable<U> & string]}` : K_9 | `${K_9}[*]` : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_6]>[K_7]>[K_8]>[K_9]> extends object ? K_9 | `${K_9}.${{ [K_10 in keyof NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_6]>[K_7]>[K_8]>[K_9]> & string]: NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_6]>[K_7]>[K_8]>[K_9]>[K_10]> extends (...args: any[]) => any ? never : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_6]>[K_7]>[K_8]>[K_9]>[K_10]> extends (infer U)[] ? U extends object ? K_10 | `${K_10}[*]` | `${K_10}[*].${/*elided*/ any[keyof NonNullable<U> & string]}` : K_10 | `${K_10}[*]` : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_6]>[K_7]>[K_8]>[K_9]>[K_10]> extends object ? K_10 | `${K_10}.${{ [K_11 in keyof NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_6]>[K_7]>[K_8]>[K_9]>[K_10]> & string]: NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_6]>[K_7]>[K_8]>[K_9]>[K_10]>[K_11]> extends (...args: any[]) => any ? never : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_6]>[K_7]>[K_8]>[K_9]>[K_10]>[K_11]> extends (infer U)[] ? U extends object ? K_11 | `${K_11}[*]` | `${K_11}[*].${/*elided*/ any[keyof NonNullable<U> & string]}` : K_11 | `${K_11}[*]` : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_6]>[K_7]>[K_8]>[K_9]>[K_10]>[K_11]> extends object ? K_11 | `${K_11}.${/*elided*/ any[keyof NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_6]>[K_7]>[K_8]>[K_9]>[K_10]>[K_11]> & string]}` : K_11; }[keyof NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_6]>[K_7]>[K_8]>[K_9]>[K_10]> & string]}` : K_10; }[keyof NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_6]>[K_7]>[K_8]>[K_9]> & string]}` : K_9; }[keyof NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_6]>[K_7]>[K_8]> & string]}` : K_8; }[keyof NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_6]>[K_7]> & string]}` : K_7; }[keyof NonNullable<NonNullable<NonNullable<U>[K_2]>[K_6]> & string]}` : K_6; }[keyof NonNullable<NonNullable<U>[K_2]> & string]}` : K_2; }[keyof NonNullable<U> & string]}` : K_5 | `${K_5}[*]` : NonNullable<NonNullable<NonNullable<NonNullable<TShape[K]>[K_3]>[K_4]>[K_5]> extends object ? K_5 | `${K_5}.${{ [K_6 in keyof NonNullable<NonNullable<NonNullable<NonNullable<TShape[K]>[K_3]>[K_4]>[K_5]> & string]: NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<TShape[K]>[K_3]>[K_4]>[K_5]>[K_6]> extends (...args: any[]) => any ? never : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<TShape[K]>[K_3]>[K_4]>[K_5]>[K_6]> extends (infer U)[] ? U extends object ? K_6 | `${K_6}[*]` | `${K_6}[*].${{ [K_2 in keyof NonNullable<U> & string]: NonNullable<NonNullable<U>[K_2]> extends (...args: any[]) => any ? never : NonNullable<NonNullable<U>[K_2]> extends (infer U)[] ? U extends object ? K_2 | `${K_2}[*]` | `${K_2}[*].${/*elided*/ any[keyof NonNullable<U> & string]}` : K_2 | `${K_2}[*]` : NonNullable<NonNullable<U>[K_2]> extends object ? K_2 | `${K_2}.${{ [K_7 in keyof NonNullable<NonNullable<U>[K_2]> & string]: NonNullable<NonNullable<NonNullable<U>[K_2]>[K_7]> extends (...args: any[]) => any ? never : NonNullable<NonNullable<NonNullable<U>[K_2]>[K_7]> extends (infer U)[] ? U extends object ? K_7 | `${K_7}[*]` | `${K_7}[*].${/*elided*/ any[keyof NonNullable<U> & string]}` : K_7 | `${K_7}[*]` : NonNullable<NonNullable<NonNullable<U>[K_2]>[K_7]> extends object ? K_7 | `${K_7}.${{ [K_8 in keyof NonNullable<NonNullable<NonNullable<U>[K_2]>[K_7]> & string]: NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_7]>[K_8]> extends (...args: any[]) => any ? never : NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_7]>[K_8]> extends (infer U)[] ? U extends object ? K_8 | `${K_8}[*]` | `${K_8}[*].${/*elided*/ any[keyof NonNullable<U> & string]}` : K_8 | `${K_8}[*]` : NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_7]>[K_8]> extends object ? K_8 | `${K_8}.${{ [K_9 in keyof NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_7]>[K_8]> & string]: NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_7]>[K_8]>[K_9]> extends (...args: any[]) => any ? never : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_7]>[K_8]>[K_9]> extends (infer U)[] ? U extends object ? K_9 | `${K_9}[*]` | `${K_9}[*].${/*elided*/ any[keyof NonNullable<U> & string]}` : K_9 | `${K_9}[*]` : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_7]>[K_8]>[K_9]> extends object ? K_9 | `${K_9}.${{ [K_10 in keyof NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_7]>[K_8]>[K_9]> & string]: NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_7]>[K_8]>[K_9]>[K_10]> extends (...args: any[]) => any ? never : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_7]>[K_8]>[K_9]>[K_10]> extends (infer U)[] ? U extends object ? K_10 | `${K_10}[*]` | `${K_10}[*].${/*elided*/ any[keyof NonNullable<U> & string]}` : K_10 | `${K_10}[*]` : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_7]>[K_8]>[K_9]>[K_10]> extends object ? K_10 | `${K_10}.${{ [K_11 in keyof NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_7]>[K_8]>[K_9]>[K_10]> & string]: NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_7]>[K_8]>[K_9]>[K_10]>[K_11]> extends (...args: any[]) => any ? never : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_7]>[K_8]>[K_9]>[K_10]>[K_11]> extends (infer U)[] ? U extends object ? K_11 | `${K_11}[*]` | `${K_11}[*].${/*elided*/ any[keyof NonNullable<U> & string]}` : K_11 | `${K_11}[*]` : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_7]>[K_8]>[K_9]>[K_10]>[K_11]> extends object ? K_11 | `${K_11}.${/*elided*/ any[keyof NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_7]>[K_8]>[K_9]>[K_10]>[K_11]> & string]}` : K_11; }[keyof NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_7]>[K_8]>[K_9]>[K_10]> & string]}` : K_10; }[keyof NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_7]>[K_8]>[K_9]> & string]}` : K_9; }[keyof NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_7]>[K_8]> & string]}` : K_8; }[keyof NonNullable<NonNullable<NonNullable<U>[K_2]>[K_7]> & string]}` : K_7; }[keyof NonNullable<NonNullable<U>[K_2]> & string]}` : K_2; }[keyof NonNullable<U> & string]}` : K_6 | `${K_6}[*]` : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<TShape[K]>[K_3]>[K_4]>[K_5]>[K_6]> extends object ? K_6 | `${K_6}.${{ [K_7 in keyof NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<TShape[K]>[K_3]>[K_4]>[K_5]>[K_6]> & string]: NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<TShape[K]>[K_3]>[K_4]>[K_5]>[K_6]>[K_7]> extends (...args: any[]) => any ? never : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<TShape[K]>[K_3]>[K_4]>[K_5]>[K_6]>[K_7]> extends (infer U)[] ? U extends object ? K_7 | `${K_7}[*]` | `${K_7}[*].${{ [K_2 in keyof NonNullable<U> & string]: NonNullable<NonNullable<U>[K_2]> extends (...args: any[]) => any ? never : NonNullable<NonNullable<U>[K_2]> extends (infer U)[] ? U extends object ? K_2 | `${K_2}[*]` | `${K_2}[*].${/*elided*/ any[keyof NonNullable<U> & string]}` : K_2 | `${K_2}[*]` : NonNullable<NonNullable<U>[K_2]> extends object ? K_2 | `${K_2}.${{ [K_8 in keyof NonNullable<NonNullable<U>[K_2]> & string]: NonNullable<NonNullable<NonNullable<U>[K_2]>[K_8]> extends (...args: any[]) => any ? never : NonNullable<NonNullable<NonNullable<U>[K_2]>[K_8]> extends (infer U)[] ? U extends object ? K_8 | `${K_8}[*]` | `${K_8}[*].${/*elided*/ any[keyof NonNullable<U> & string]}` : K_8 | `${K_8}[*]` : NonNullable<NonNullable<NonNullable<U>[K_2]>[K_8]> extends object ? K_8 | `${K_8}.${{ [K_9 in keyof NonNullable<NonNullable<NonNullable<U>[K_2]>[K_8]> & string]: NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_8]>[K_9]> extends (...args: any[]) => any ? never : NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_8]>[K_9]> extends (infer U)[] ? U extends object ? K_9 | `${K_9}[*]` | `${K_9}[*].${/*elided*/ any[keyof NonNullable<U> & string]}` : K_9 | `${K_9}[*]` : NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_8]>[K_9]> extends object ? K_9 | `${K_9}.${{ [K_10 in keyof NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_8]>[K_9]> & string]: NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_8]>[K_9]>[K_10]> extends (...args: any[]) => any ? never : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_8]>[K_9]>[K_10]> extends (infer U)[] ? U extends object ? K_10 | `${K_10}[*]` | `${K_10}[*].${/*elided*/ any[keyof NonNullable<U> & string]}` : K_10 | `${K_10}[*]` : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_8]>[K_9]>[K_10]> extends object ? K_10 | `${K_10}.${{ [K_11 in keyof NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_8]>[K_9]>[K_10]> & string]: NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_8]>[K_9]>[K_10]>[K_11]> extends (...args: any[]) => any ? never : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_8]>[K_9]>[K_10]>[K_11]> extends (infer U)[] ? U extends object ? K_11 | `${K_11}[*]` | `${K_11}[*].${/*elided*/ any[keyof NonNullable<U> & string]}` : K_11 | `${K_11}[*]` : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_8]>[K_9]>[K_10]>[K_11]> extends object ? K_11 | `${K_11}.${/*elided*/ any[keyof NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_8]>[K_9]>[K_10]>[K_11]> & string]}` : K_11; }[keyof NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_8]>[K_9]>[K_10]> & string]}` : K_10; }[keyof NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_8]>[K_9]> & string]}` : K_9; }[keyof NonNullable<NonNullable<NonNullable<U>[K_2]>[K_8]> & string]}` : K_8; }[keyof NonNullable<NonNullable<U>[K_2]> & string]}` : K_2; }[keyof NonNullable<U> & string]}` : K_7 | `${K_7}[*]` : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<TShape[K]>[K_3]>[K_4]>[K_5]>[K_6]>[K_7]> extends object ? K_7 | `${K_7}.${{ [K_8 in keyof NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<TShape[K]>[K_3]>[K_4]>[K_5]>[K_6]>[K_7]> & string]: NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<TShape[K]>[K_3]>[K_4]>[K_5]>[K_6]>[K_7]>[K_8]> extends (...args: any[]) => any ? never : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<TShape[K]>[K_3]>[K_4]>[K_5]>[K_6]>[K_7]>[K_8]> extends (infer U)[] ? U extends object ? K_8 | `${K_8}[*]` | `${K_8}[*].${{ [K_2 in keyof NonNullable<U> & string]: NonNullable<NonNullable<U>[K_2]> extends (...args: any[]) => any ? never : NonNullable<NonNullable<U>[K_2]> extends (infer U)[] ? U extends object ? K_2 | `${K_2}[*]` | `${K_2}[*].${/*elided*/ any[keyof NonNullable<U> & string]}` : K_2 | `${K_2}[*]` : NonNullable<NonNullable<U>[K_2]> extends object ? K_2 | `${K_2}.${{ [K_9 in keyof NonNullable<NonNullable<U>[K_2]> & string]: NonNullable<NonNullable<NonNullable<U>[K_2]>[K_9]> extends (...args: any[]) => any ? never : NonNullable<NonNullable<NonNullable<U>[K_2]>[K_9]> extends (infer U)[] ? U extends object ? K_9 | `${K_9}[*]` | `${K_9}[*].${/*elided*/ any[keyof NonNullable<U> & string]}` : K_9 | `${K_9}[*]` : NonNullable<NonNullable<NonNullable<U>[K_2]>[K_9]> extends object ? K_9 | `${K_9}.${{ [K_10 in keyof NonNullable<NonNullable<NonNullable<U>[K_2]>[K_9]> & string]: NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_9]>[K_10]> extends (...args: any[]) => any ? never : NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_9]>[K_10]> extends (infer U)[] ? U extends object ? K_10 | `${K_10}[*]` | `${K_10}[*].${/*elided*/ any[keyof NonNullable<U> & string]}` : K_10 | `${K_10}[*]` : NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_9]>[K_10]> extends object ? K_10 | `${K_10}.${{ [K_11 in keyof NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_9]>[K_10]> & string]: NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_9]>[K_10]>[K_11]> extends (...args: any[]) => any ? never : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_9]>[K_10]>[K_11]> extends (infer U)[] ? U extends object ? K_11 | `${K_11}[*]` | `${K_11}[*].${/*elided*/ any[keyof NonNullable<U> & string]}` : K_11 | `${K_11}[*]` : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_9]>[K_10]>[K_11]> extends object ? K_11 | `${K_11}.${/*elided*/ any[keyof NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_9]>[K_10]>[K_11]> & string]}` : K_11; }[keyof NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_9]>[K_10]> & string]}` : K_10; }[keyof NonNullable<NonNullable<NonNullable<U>[K_2]>[K_9]> & string]}` : K_9; }[keyof NonNullable<NonNullable<U>[K_2]> & string]}` : K_2; }[keyof NonNullable<U> & string]}` : K_8 | `${K_8}[*]` : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<TShape[K]>[K_3]>[K_4]>[K_5]>[K_6]>[K_7]>[K_8]> extends object ? K_8 | `${K_8}.${{ [K_9 in keyof NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<TShape[K]>[K_3]>[K_4]>[K_5]>[K_6]>[K_7]>[K_8]> & string]: NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<TShape[K]>[K_3]>[K_4]>[K_5]>[K_6]>[K_7]>[K_8]>[K_9]> extends (...args: any[]) => any ? never : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<TShape[K]>[K_3]>[K_4]>[K_5]>[K_6]>[K_7]>[K_8]>[K_9]> extends (infer U)[] ? U extends object ? K_9 | `${K_9}[*]` | `${K_9}[*].${{ [K_2 in keyof NonNullable<U> & string]: NonNullable<NonNullable<U>[K_2]> extends (...args: any[]) => any ? never : NonNullable<NonNullable<U>[K_2]> extends (infer U)[] ? U extends object ? K_2 | `${K_2}[*]` | `${K_2}[*].${/*elided*/ any[keyof NonNullable<U> & string]}` : K_2 | `${K_2}[*]` : NonNullable<NonNullable<U>[K_2]> extends object ? K_2 | `${K_2}.${{ [K_10 in keyof NonNullable<NonNullable<U>[K_2]> & string]: NonNullable<NonNullable<NonNullable<U>[K_2]>[K_10]> extends (...args: any[]) => any ? never : NonNullable<NonNullable<NonNullable<U>[K_2]>[K_10]> extends (infer U)[] ? U extends object ? K_10 | `${K_10}[*]` | `${K_10}[*].${/*elided*/ any[keyof NonNullable<U> & string]}` : K_10 | `${K_10}[*]` : NonNullable<NonNullable<NonNullable<U>[K_2]>[K_10]> extends object ? K_10 | `${K_10}.${{ [K_11 in keyof NonNullable<NonNullable<NonNullable<U>[K_2]>[K_10]> & string]: NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_10]>[K_11]> extends (...args: any[]) => any ? never : NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_10]>[K_11]> extends (infer U)[] ? U extends object ? K_11 | `${K_11}[*]` | `${K_11}[*].${/*elided*/ any[keyof NonNullable<U> & string]}` : K_11 | `${K_11}[*]` : NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_10]>[K_11]> extends object ? K_11 | `${K_11}.${/*elided*/ any[keyof NonNullable<NonNullable<NonNullable<NonNullable<U>[K_2]>[K_10]>[K_11]> & string]}` : K_11; }[keyof NonNullable<NonNullable<NonNullable<U>[K_2]>[K_10]> & string]}` : K_10; }[keyof NonNullable<NonNullable<U>[K_2]> & string]}` : K_2; }[keyof NonNullable<U> & string]}` : K_9 | `${K_9}[*]` : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<TShape[K]>[K_3]>[K_4]>[K_5]>[K_6]>[K_7]>[K_8]>[K_9]> extends object ? K_9 | `${K_9}.${{ [K_10 in keyof NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<TShape[K]>[K_3]>[K_4]>[K_5]>[K_6]>[K_7]>[K_8]>[K_9]> & string]: NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<TShape[K]>[K_3]>[K_4]>[K_5]>[K_6]>[K_7]>[K_8]>[K_9]>[K_10]> extends (...args: any[]) => any ? never : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<TShape[K]>[K_3]>[K_4]>[K_5]>[K_6]>[K_7]>[K_8]>[K_9]>[K_10]> extends (infer U)[] ? U extends object ? K_10 | `${K_10}[*]` | `${K_10}[*].${{ [K_2 in keyof NonNullable<U> & string]: NonNullable<NonNullable<U>[K_2]> extends (...args: any[]) => any ? never : NonNullable<NonNullable<U>[K_2]> extends (infer U)[] ? U extends object ? K_2 | `${K_2}[*]` | `${K_2}[*].${/*elided*/ any[keyof NonNullable<U> & string]}` : K_2 | `${K_2}[*]` : NonNullable<NonNullable<U>[K_2]> extends object ? K_2 | `${K_2}.${{ [K_11 in keyof NonNullable<NonNullable<U>[K_2]> & string]: NonNullable<NonNullable<NonNullable<U>[K_2]>[K_11]> extends (...args: any[]) => any ? never : NonNullable<NonNullable<NonNullable<U>[K_2]>[K_11]> extends (infer U)[] ? U extends object ? K_11 | `${K_11}[*]` | `${K_11}[*].${/*elided*/ any[keyof NonNullable<U> & string]}` : K_11 | `${K_11}[*]` : NonNullable<NonNullable<NonNullable<U>[K_2]>[K_11]> extends object ? K_11 | `${K_11}.${/*elided*/ any[keyof NonNullable<NonNullable<NonNullable<U>[K_2]>[K_11]> & string]}` : K_11; }[keyof NonNullable<NonNullable<U>[K_2]> & string]}` : K_2; }[keyof NonNullable<U> & string]}` : K_10 | `${K_10}[*]` : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<TShape[K]>[K_3]>[K_4]>[K_5]>[K_6]>[K_7]>[K_8]>[K_9]>[K_10]> extends object ? K_10 | `${K_10}.${{ [K_11 in keyof NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<TShape[K]>[K_3]>[K_4]>[K_5]>[K_6]>[K_7]>[K_8]>[K_9]>[K_10]> & string]: NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<TShape[K]>[K_3]>[K_4]>[K_5]>[K_6]>[K_7]>[K_8]>[K_9]>[K_10]>[K_11]> extends (...args: any[]) => any ? never : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<TShape[K]>[K_3]>[K_4]>[K_5]>[K_6]>[K_7]>[K_8]>[K_9]>[K_10]>[K_11]> extends (infer U)[] ? U extends object ? K_11 | `${K_11}[*]` | `${K_11}[*].${{ [K_2 in keyof NonNullable<U> & string]: NonNullable<NonNullable<U>[K_2]> extends (...args: any[]) => any ? never : NonNullable<NonNullable<U>[K_2]> extends (infer U)[] ? U extends object ? K_2 | `${K_2}[*]` | `${K_2}[*].${/*elided*/ any[keyof NonNullable<U> & string]}` : K_2 | `${K_2}[*]` : NonNullable<NonNullable<U>[K_2]> extends object ? K_2 | `${K_2}.${/*elided*/ any[keyof NonNullable<NonNullable<U>[K_2]> & string]}` : K_2; }[keyof NonNullable<U> & string]}` : K_11 | `${K_11}[*]` : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<TShape[K]>[K_3]>[K_4]>[K_5]>[K_6]>[K_7]>[K_8]>[K_9]>[K_10]>[K_11]> extends object ? K_11 | `${K_11}.${{ [K_12 in keyof NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<TShape[K]>[K_3]>[K_4]>[K_5]>[K_6]>[K_7]>[K_8]>[K_9]>[K_10]>[K_11]> & string]: NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<TShape[K]>[K_3]>[K_4]>[K_5]>[K_6]>[K_7]>[K_8]>[K_9]>[K_10]>[K_11]>[K_12]> extends (...args: any[]) => any ? never : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<TShape[K]>[K_3]>[K_4]>[K_5]>[K_6]>[K_7]>[K_8]>[K_9]>[K_10]>[K_11]>[K_12]> extends (infer U)[] ? U extends object ? K_12 | `${K_12}[*]` | `${K_12}[*].${/*elided*/ any[keyof NonNullable<U> & string]}` : K_12 | `${K_12}[*]` : NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<TShape[K]>[K_3]>[K_4]>[K_5]>[K_6]>[K_7]>[K_8]>[K_9]>[K_10]>[K_11]>[K_12]> extends object ? K_12 | `${K_12}.${/*elided*/ any[keyof NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<TShape[K]>[K_3]>[K_4]>[K_5]>[K_6]>[K_7]>[K_8]>[K_9]>[K_10]>[K_11]>[K_12]> & string]}` : K_12; }[keyof NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<TShape[K]>[K_3]>[K_4]>[K_5]>[K_6]>[K_7]>[K_8]>[K_9]>[K_10]>[K_11]> & string]}` : K_11; }[keyof NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<TShape[K]>[K_3]>[K_4]>[K_5]>[K_6]>[K_7]>[K_8]>[K_9]>[K_10]> & string]}` : K_10; }[keyof NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<TShape[K]>[K_3]>[K_4]>[K_5]>[K_6]>[K_7]>[K_8]>[K_9]> & string]}` : K_9; }[keyof NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<TShape[K]>[K_3]>[K_4]>[K_5]>[K_6]>[K_7]>[K_8]> & string]}` : K_8; }[keyof NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<TShape[K]>[K_3]>[K_4]>[K_5]>[K_6]>[K_7]> & string]}` : K_7; }[keyof NonNullable<NonNullable<NonNullable<NonNullable<NonNullable<TShape[K]>[K_3]>[K_4]>[K_5]>[K_6]> & string]}` : K_6; }[keyof NonNullable<NonNullable<NonNullable<NonNullable<TShape[K]>[K_3]>[K_4]>[K_5]> & string]}` : K_5; }[keyof NonNullable<NonNullable<NonNullable<TShape[K]>[K_3]>[K_4]> & string]}` : K_4; }[keyof NonNullable<NonNullable<TShape[K]>[K_3]> & string]}` : K_3; }[keyof NonNullable<TShape[K]> & string]}` : K; }[keyof TShape & string] ? T extends string ? T extends `${string}[*]${string}` ? (T extends infer T_1 ? T_1 extends T ? T_1 extends `${infer A}[*]${infer B}` ? `${A}[0]${B extends `${infer A}[*]${infer B}` ? `${A}[0]${B extends `${infer A}[*]${infer B}` ? `${A}[0]${B extends `${infer A}[*]${infer B}` ? `${A}[0]${B extends `${infer A}[*]${infer B}` ? `${A}[0]${B extends `${infer A}[*]${infer B}` ? `${A}[0]${B extends `${infer A}[*]${infer B}` ? `${A}[0]${B extends `${infer A}[*]${infer B}` ? `${A}[0]${B extends `${infer A}[*]${infer B}` ? `${A}[0]${B extends `${infer A}[*]${infer B}` ? `${A}[0]${B extends `${infer A}[*]${infer B}` ? `${A}[0]${/*elided*/ any}` : B}` : B}` : B}` : B}` : B}` : B}` : B}` : B}` : B}` : B}` : T_1 : never : never) | ((T extends infer T_2 ? T_2 extends T ? T_2 extends `${infer A}[*]${infer B}` ? `${A}[${number}]${B extends `${infer A}[*]${infer B}` ? `${A}[${number}]${B extends `${infer A}[*]${infer B}` ? `${A}[${number}]${B extends `${infer A}[*]${infer B}` ? `${A}[${number}]${B extends `${infer A}[*]${infer B}` ? `${A}[${number}]${B extends `${infer A}[*]${infer B}` ? `${A}[${number}]${B extends `${infer A}[*]${infer B}` ? `${A}[${number}]${B extends `${infer A}[*]${infer B}` ? `${A}[${number}]${B extends `${infer A}[*]${infer B}` ? `${A}[${number}]${B extends `${infer A}[*]${infer B}` ? `${A}[${number}]${B extends `${infer A}[*]${infer B}` ? `${A}[${number}]${/*elided*/ any}` : B}` : B}` : B}` : B}` : B}` : B}` : B}` : B}` : B}` : B}` : T_2 : never : never) & {
6
+ _____foldMark?: never;
7
+ }) : T : never : never : never, import("@standard-schema/spec").StandardSchemaV1.Issue[]>;
6
8
  //# sourceMappingURL=useFormErrorObserver.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"useFormErrorObserver.d.ts","sourceRoot":"","sources":["../../src/hooks/useFormErrorObserver.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAIhD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAGzC,wBAAgB,oBAAoB,CAAC,MAAM,SAAS,MAAM,EACxD,IAAI,EAAE,OAAO,CAAC,MAAM,CAAC,EACrB,OAAO,CAAC,EAAE;IACR,OAAO,CAAC,EAAE,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC;CACjC,yFA0BF"}
1
+ {"version":3,"file":"useFormErrorObserver.d.ts","sourceRoot":"","sources":["../../src/hooks/useFormErrorObserver.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAI3C,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAGzC,wBAAgB,oBAAoB,CAAC,MAAM,SAAS,MAAM,EACxD,IAAI,EAAE,OAAO,CAAC,MAAM,CAAC,EACrB,OAAO,CAAC,EAAE;IACR,OAAO,CAAC,EAAE,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC;CACjC;;0FA4BF"}
@@ -1,4 +1,4 @@
1
1
  import { Field } from '../../../core/src';
2
2
  import { UseForm } from '../hooks/useForm';
3
- export declare function useFormField<TShape extends object, TPath extends Field.Paths<TShape>>(form: UseForm<TShape>, path: TPath, defaultValue?: Field.GetValue<TShape, TPath>): import('../../../core/src').FormField<TShape, TPath>;
3
+ export declare function useFormField<TShape extends object, TPath extends Field.Paths<TShape>>(form: UseForm<TShape>, path: TPath, bindingConfig?: Parameters<typeof form.controller.bindField<TPath>>[1]): import('../../../core/src').FormField<TShape, TPath> | undefined;
4
4
  //# sourceMappingURL=useFormField.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"useFormField.d.ts","sourceRoot":"","sources":["../../src/hooks/useFormField.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAE3C,OAAO,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAI3C,wBAAgB,YAAY,CAC1B,MAAM,SAAS,MAAM,EACrB,KAAK,SAAS,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,EAEjC,IAAI,EAAE,OAAO,CAAC,MAAM,CAAC,EACrB,IAAI,EAAE,KAAK,EACX,YAAY,CAAC,EAAE,KAAK,CAAC,QAAQ,CAAC,MAAM,EAAE,KAAK,CAAC,yDAiC7C"}
1
+ {"version":3,"file":"useFormField.d.ts","sourceRoot":"","sources":["../../src/hooks/useFormField.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAE3C,OAAO,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAI3C,wBAAgB,YAAY,CAC1B,MAAM,SAAS,MAAM,EACrB,KAAK,SAAS,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,EAEjC,IAAI,EAAE,OAAO,CAAC,MAAM,CAAC,EACrB,IAAI,EAAE,KAAK,EACX,aAAa,CAAC,EAAE,UAAU,CAAC,OAAO,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,qEA0CvE"}
@@ -1,6 +1,6 @@
1
1
  import { Field } from '../../../core/src';
2
2
  import { UseForm } from './useForm';
3
- export declare function useFormValuesObserver<TShape extends object>(form: UseForm<TShape>, options?: {
4
- include?: Field.Paths<TShape>[];
3
+ export declare function useFormValuesObserver<TShape extends object, TPaths extends Field.Paths<TShape>[] | undefined = undefined>(form: UseForm<TShape>, options?: {
4
+ include?: TPaths;
5
5
  }): import('packages/core/src/types/DeepPartial').DeepPartial<TShape>;
6
6
  //# sourceMappingURL=useFormValuesObserver.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"useFormValuesObserver.d.ts","sourceRoot":"","sources":["../../src/hooks/useFormValuesObserver.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAG3C,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAGzC,wBAAgB,qBAAqB,CAAC,MAAM,SAAS,MAAM,EACzD,IAAI,EAAE,OAAO,CAAC,MAAM,CAAC,EACrB,OAAO,CAAC,EAAE;IACR,OAAO,CAAC,EAAE,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC;CACjC,qEAuBF"}
1
+ {"version":3,"file":"useFormValuesObserver.d.ts","sourceRoot":"","sources":["../../src/hooks/useFormValuesObserver.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAG3C,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAGzC,wBAAgB,qBAAqB,CACnC,MAAM,SAAS,MAAM,EACrB,MAAM,SAAS,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,GAAG,SAAS,GAAG,SAAS,EAE5D,IAAI,EAAE,OAAO,CAAC,MAAM,CAAC,EACrB,OAAO,CAAC,EAAE;IACR,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,qEA+BF"}
@@ -1 +1 @@
1
- {"version":3,"file":"useRenderControl.d.ts","sourceRoot":"","sources":["../../src/hooks/useRenderControl.tsx"],"names":[],"mappings":"AAEA,wBAAgB,gBAAgB;;;EAS/B"}
1
+ {"version":3,"file":"useRenderControl.d.ts","sourceRoot":"","sources":["../../src/hooks/useRenderControl.tsx"],"names":[],"mappings":"AAEA,wBAAgB,gBAAgB;;;EAuB/B"}