import type { StringKeyOf } from '../../types';
export declare function objectKeys<T extends object>(object: T): StringKeyOf<T>[];
export declare function objectAssign<T extends object>(object: T, ...values: Partial<T>[]): T;
type Entries<T> = {
    [K in keyof T]: [K, T[K]];
}[keyof T][];
export declare function objectEntries<T extends object>(object: T): Entries<T>;
export declare function extractValues<T extends object, K extends readonly (keyof T)[]>(state: T, fields: K): Pick<T, K[number]>;
export declare function extractUpdates<T extends object>(state: T, updates: Partial<T>, fields?: Array<keyof T>, method?: 'equals' | 'matches'): Partial<T>;
export declare function patchObject<T extends object>(state: T, updates: Partial<T>, fields?: Array<keyof T>, method?: 'equals' | 'matches'): T;
export declare function extractKV<T, K extends keyof T, V extends keyof T>(items: T[], keyColumn: K, valueColumn: V): Record<string, T[V]>;
export {};
//# sourceMappingURL=objects.d.ts.map