import { Provider } from '@angular/core';
import { DynamicItemLoaderValidatorFn } from '@anglr/dynamic';
import { RelationsComponentDef } from './types';
/**
 * Checks whether data is relations component def
 * @param data - Data to be checked
 */
export declare const isRelationsComponentDef: DynamicItemLoaderValidatorFn<RelationsComponentDef>;
/**
 * Provides relations debugger
 */
export declare function provideRelationsDebugger(): Provider[];
/**
 * Default providers for relations subpackage
 */
export declare function provideRelations(): Provider[];
/**
 * Defines skip initial data transfer for relations for specified property
 * @param object - Object which will have this new property defined
 * @param name - Name of property for which is skip init defined
 */
export declare function defineSkipInitProp<TObj>(object: TObj, name: string): void;
/**
 * Tests whether there is skip init defined for property
 * @param object - Object containg skip init property to be tested
 * @param name - Name of property for which should be skip init defined
 * @returns
 */
export declare function isSkipInit<TObj>(object: TObj, name: string): boolean;
/**
 * Defines indication that property was at least once assigned for specified property
 * @param object - Object which will have this new property defined
 * @param name - Name of property for which is assigned defined
 */
export declare function defineAssignedProp<TObj>(object: TObj, name: string): void;
/**
 * Tests whether there is assigned defined for property
 * @param object - Object containg assigned property to be tested
 * @param name - Name of property for which should be assigned defined
 * @returns
 */
export declare function isAssigned<TObj>(object: TObj, name: string): boolean;
//# sourceMappingURL=utils.d.ts.map