import { BeanPath, StringPath } from '../expression/'; import { QTypedManyResourceRelationship, QTypedOneResourceRelationship } from '../stub/'; import { MetaElement, QMetaElement } from './meta.element'; import { ManyQueryResult, OneQueryResult, ResourceRelationship, TypedOneResourceRelationship } from 'ngrx-json-api'; export declare module MetaType { interface Relationships extends MetaElement.Relationships { [key: string]: ResourceRelationship; elementType?: TypedOneResourceRelationship; } } export interface MetaType extends MetaElement { relationships?: MetaType.Relationships; } export interface MetaTypeResult extends OneQueryResult { data?: MetaType; } export interface MetaTypeListResult extends ManyQueryResult { data?: Array; } export declare class QMetaType extends BeanPath { metaId: string; id: StringPath; type: StringPath; relationships: QMetaType.QRelationships; attributes: QMetaElement.QAttributes; } export declare module QMetaType { class QRelationships extends BeanPath { private _elementType; readonly elementType: QTypedOneResourceRelationship; private _parent; readonly parent: QTypedOneResourceRelationship; private _children; readonly children: QTypedManyResourceRelationship; } } export declare let createEmptyMetaType: (id: string) => MetaType;