import type { Flatten, NestedResourceKeys, OnlyObject } from '../../type';
export type RelationsBuildInput<T extends Record<string, any>> = {
    [K in keyof T]?: Flatten<T[K]> extends OnlyObject<T[K]> ? RelationsBuildInput<Flatten<T[K]>> | boolean : never;
} | NestedResourceKeys<T>[];
export type RelationsParseOptions<T extends Record<string, any> = Record<string, any>> = {
    allowed?: NestedResourceKeys<T>[];
    includeParents?: boolean | string[] | string;
    mapping?: Record<string, string>;
    pathMapping?: Record<string, string>;
    throwOnFailure?: boolean;
};
export type RelationsParseOutputElement = {
    key: string;
    value: string;
};
export type RelationsParseOutput = RelationsParseOutputElement[];
//# sourceMappingURL=type.d.ts.map