export {}; import { AxiosStatic } from "axios"; // * Recursive List type StringList = Record; interface NestedStringListInterface extends Record {} // * Recursive List type NumberList = Record; interface NestedNumberListInterface extends Record {} // * Recursive List type Model = Record< string, | string | number | object | NestedStringList | NestedNumberList | NestedModelInterface >; interface NestedModelInterface extends Model {} type NestedStringList = NestedStringListInterface | StringList | string; type NestedNumberList = NestedNumberListInterface | NumberList | number; type ModelList = Array; declare global { type LaravelModel = Model; type LaravelModelList = ModelList; interface Window { axios: AxiosStatic; Swal: Function; __SYSTEM: { _asset: string; _locale: string; _routes: Record; _translations: { json: NestedStringList; php: NestedStringList; }; }; } }