export declare function findMissingProperty<TObject>(obj: TObject, keys: (keyof TObject)[]): keyof TObject | undefined;
export declare function allMissingProperties<TObject>(obj: TObject, keys: (keyof TObject)[]): (keyof TObject)[];
export declare function notEmpty<TValue>(value: TValue | null | undefined): value is TValue;
type SnakeToCamelCase<S extends string> = S extends `${infer T}_${infer U}` ? `${Lowercase<T>}${Capitalize<SnakeToCamelCase<U>>}` : Lowercase<S>;
export type CamelCase<T> = {
    [K in keyof T as K extends string ? SnakeToCamelCase<K> : K]: T[K] extends Array<infer U> | undefined ? Array<CamelCase<U>> | undefined : T[K] extends Array<infer U> ? Array<CamelCase<U>> : T[K] extends object ? CamelCase<T[K]> : T[K];
};
export declare function convertKeysToCamelCase(obj: any): any;
export {};
