import { KeysRecursive, PrimitiveRecursive } from './recursive.type'; export declare const forEach: (o: T, callback: (key: keyof T | { [K in keyof T]: T[K] extends object ? keyof T[K] | (T[K] extends infer T_1 ? { [K_1 in keyof T_1]: T[K][K_1] extends object ? keyof T[K][K_1] | (T[K][K_1] extends infer T_2 ? { [K_2 in keyof T_2]: T[K][K_1][K_2] extends object ? keyof T[K][K_1][K_2] | (T[K][K_1][K_2] extends infer T_3 ? { [K_3 in keyof T_3]: T[K][K_1][K_2][K_3] extends object ? keyof T[K][K_1][K_2][K_3] | (T[K][K_1][K_2][K_3] extends infer T_4 ? { [K_4 in keyof T_4]: T[K][K_1][K_2][K_3][K_4] extends object ? keyof T[K][K_1][K_2][K_3][K_4] | (T[K][K_1][K_2][K_3][K_4] extends infer T_5 ? { [K_5 in keyof T_5]: T[K][K_1][K_2][K_3][K_4][K_5] extends object ? keyof T[K][K_1][K_2][K_3][K_4][K_5] | (T[K][K_1][K_2][K_3][K_4][K_5] extends infer T_6 ? { [K_6 in keyof T_6]: T[K][K_1][K_2][K_3][K_4][K_5][K_6] extends object ? keyof T[K][K_1][K_2][K_3][K_4][K_5][K_6] | (T[K][K_1][K_2][K_3][K_4][K_5][K_6] extends infer T_7 ? { [K_7 in keyof T_7]: T[K][K_1][K_2][K_3][K_4][K_5][K_6][K_7] extends object ? keyof T[K][K_1][K_2][K_3][K_4][K_5][K_6][K_7] | (T[K][K_1][K_2][K_3][K_4][K_5][K_6][K_7] extends infer T_8 ? { [K_8 in keyof T_8]: T[K][K_1][K_2][K_3][K_4][K_5][K_6][K_7][K_8] extends object ? keyof T[K][K_1][K_2][K_3][K_4][K_5][K_6][K_7][K_8] | (T[K][K_1][K_2][K_3][K_4][K_5][K_6][K_7][K_8] extends infer T_9 ? { [K_9 in keyof T_9]: T[K][K_1][K_2][K_3][K_4][K_5][K_6][K_7][K_8][K_9] extends object ? keyof T[K][K_1][K_2][K_3][K_4][K_5][K_6][K_7][K_8][K_9] | (T[K][K_1][K_2][K_3][K_4][K_5][K_6][K_7][K_8][K_9] extends infer T_10 ? { [K_10 in keyof T_10]: T[K][K_1][K_2][K_3][K_4][K_5][K_6][K_7][K_8][K_9][K_10] extends object ? keyof T[K][K_1][K_2][K_3][K_4][K_5][K_6][K_7][K_8][K_9][K_10] | any[keyof T[K][K_1][K_2][K_3][K_4][K_5][K_6][K_7][K_8][K_9][K_10]] : never; } : never)[keyof T[K][K_1][K_2][K_3][K_4][K_5][K_6][K_7][K_8][K_9]] : never; } : never)[keyof T[K][K_1][K_2][K_3][K_4][K_5][K_6][K_7][K_8]] : never; } : never)[keyof T[K][K_1][K_2][K_3][K_4][K_5][K_6][K_7]] : never; } : never)[keyof T[K][K_1][K_2][K_3][K_4][K_5][K_6]] : never; } : never)[keyof T[K][K_1][K_2][K_3][K_4][K_5]] : never; } : never)[keyof T[K][K_1][K_2][K_3][K_4]] : never; } : never)[keyof T[K][K_1][K_2][K_3]] : never; } : never)[keyof T[K][K_1][K_2]] : never; } : never)[keyof T[K][K_1]] : never; } : never)[keyof T[K]] : never; }[keyof T], v: { [K_11 in keyof T]: T[K_11] extends object ? (T[K_11] extends infer T_11 ? { [K_12 in keyof T_11]: T[K_11][K_12] extends object ? (T[K_11][K_12] extends infer T_12 ? { [K_13 in keyof T_12]: T[K_11][K_12][K_13] extends object ? (T[K_11][K_12][K_13] extends infer T_13 ? { [K_14 in keyof T_13]: T[K_11][K_12][K_13][K_14] extends object ? (T[K_11][K_12][K_13][K_14] extends infer T_14 ? { [K_15 in keyof T_14]: T[K_11][K_12][K_13][K_14][K_15] extends object ? (T[K_11][K_12][K_13][K_14][K_15] extends infer T_15 ? { [K_16 in keyof T_15]: T[K_11][K_12][K_13][K_14][K_15][K_16] extends object ? (T[K_11][K_12][K_13][K_14][K_15][K_16] extends infer T_16 ? { [K_17 in keyof T_16]: T[K_11][K_12][K_13][K_14][K_15][K_16][K_17] extends object ? (T[K_11][K_12][K_13][K_14][K_15][K_16][K_17] extends infer T_17 ? { [K_18 in keyof T_17]: T[K_11][K_12][K_13][K_14][K_15][K_16][K_17][K_18] extends object ? (T[K_11][K_12][K_13][K_14][K_15][K_16][K_17][K_18] extends infer T_18 ? { [K_19 in keyof T_18]: T[K_11][K_12][K_13][K_14][K_15][K_16][K_17][K_18][K_19] extends object ? (T[K_11][K_12][K_13][K_14][K_15][K_16][K_17][K_18][K_19] extends infer T_19 ? { [K_20 in keyof T_19]: T[K_11][K_12][K_13][K_14][K_15][K_16][K_17][K_18][K_19][K_20] extends object ? (T[K_11][K_12][K_13][K_14][K_15][K_16][K_17][K_18][K_19][K_20] extends infer T_20 ? { [K_21 in keyof T_20]: T[K_11][K_12][K_13][K_14][K_15][K_16][K_17][K_18][K_19][K_20][K_21] extends object ? any[keyof T[K_11][K_12][K_13][K_14][K_15][K_16][K_17][K_18][K_19][K_20][K_21]] : T[K_11][K_12][K_13][K_14][K_15][K_16][K_17][K_18][K_19][K_20][K_21]; } : never)[keyof T[K_11][K_12][K_13][K_14][K_15][K_16][K_17][K_18][K_19][K_20]] : T[K_11][K_12][K_13][K_14][K_15][K_16][K_17][K_18][K_19][K_20]; } : never)[keyof T[K_11][K_12][K_13][K_14][K_15][K_16][K_17][K_18][K_19]] : T[K_11][K_12][K_13][K_14][K_15][K_16][K_17][K_18][K_19]; } : never)[keyof T[K_11][K_12][K_13][K_14][K_15][K_16][K_17][K_18]] : T[K_11][K_12][K_13][K_14][K_15][K_16][K_17][K_18]; } : never)[keyof T[K_11][K_12][K_13][K_14][K_15][K_16][K_17]] : T[K_11][K_12][K_13][K_14][K_15][K_16][K_17]; } : never)[keyof T[K_11][K_12][K_13][K_14][K_15][K_16]] : T[K_11][K_12][K_13][K_14][K_15][K_16]; } : never)[keyof T[K_11][K_12][K_13][K_14][K_15]] : T[K_11][K_12][K_13][K_14][K_15]; } : never)[keyof T[K_11][K_12][K_13][K_14]] : T[K_11][K_12][K_13][K_14]; } : never)[keyof T[K_11][K_12][K_13]] : T[K_11][K_12][K_13]; } : never)[keyof T[K_11][K_12]] : T[K_11][K_12]; } : never)[keyof T[K_11]] : T[K_11]; }[keyof T]) => void | 'stop', isRecursive?: boolean) => void;