shyft
Version:
Model driven GraphQL API framework
26 lines (25 loc) • 1.08 kB
TypeScript
import { DataTypeFunction, DataTypeValidateType } from './DataType';
import { ComplexDataType } from './ComplexDataType';
import { AttributesMap, AttributesMapGenerator, AttributeBase, AttributesSetupMap } from '../attribute/Attribute';
export declare type ObjectDataTypeSetupType = {
name: string;
description: string;
attributes: AttributesSetupMap | AttributesMapGenerator;
};
export declare class ObjectDataType extends ComplexDataType {
name: string;
description: string;
attributes: AttributesMap;
private _attributesMap;
private _attributes;
constructor(setup?: ObjectDataTypeSetupType);
getAttributes(): AttributesMap;
_processAttribute(rawAttribute: AttributeBase, attributeName: string): AttributeBase;
_processAttributeMap(): AttributesMap;
validate: DataTypeValidateType;
toString(): string;
}
export declare const isObjectDataType: (obj: unknown) => obj is ObjectDataType;
export declare const buildObjectDataType: (obj: {
attributes: AttributesSetupMap | AttributesMapGenerator;
}) => DataTypeFunction;