import { BeanPath, StringPath } from '../expression/'; import { QTypedManyResourceRelationship, QTypedOneResourceRelationship } from '../stub/'; import { MetaDataObject, QMetaDataObject } from './meta.data.object'; import { MetaElement, QMetaElement } from './meta.element'; import { MetaResource, QMetaResource } from './meta.resource'; import { ManyQueryResult, OneQueryResult, ResourceRelationship, TypedOneResourceRelationship } from 'ngrx-json-api'; export declare module MetaResourceRepository { interface Relationships extends MetaElement.Relationships { [key: string]: ResourceRelationship; resourceType?: TypedOneResourceRelationship; listMetaType?: TypedOneResourceRelationship; listLinksType?: TypedOneResourceRelationship; } } export interface MetaResourceRepository extends MetaElement { relationships?: MetaResourceRepository.Relationships; } export interface MetaResourceRepositoryResult extends OneQueryResult { data?: MetaResourceRepository; } export interface MetaResourceRepositoryListResult extends ManyQueryResult { data?: Array; } export declare class QMetaResourceRepository extends BeanPath { metaId: string; id: StringPath; type: StringPath; relationships: QMetaResourceRepository.QRelationships; attributes: QMetaElement.QAttributes; } export declare module QMetaResourceRepository { class QRelationships extends BeanPath { private _resourceType; readonly resourceType: QTypedOneResourceRelationship; private _listMetaType; readonly listMetaType: QTypedOneResourceRelationship; private _listLinksType; readonly listLinksType: QTypedOneResourceRelationship; private _parent; readonly parent: QTypedOneResourceRelationship; private _children; readonly children: QTypedManyResourceRelationship; } } export declare let createEmptyMetaResourceRepository: (id: string) => MetaResourceRepository;