import { Space } from "ngx-fabric8-wit";
import { modelUI, Mapper, MapTree, modelService } from './common.model';
export declare class WorkItemType extends modelService {
    attributes?: {
        name: string;
        version: number;
        description: string;
        icon: string;
        fields: any;
    };
    relationships?: {
        guidedChildTypes?: {
            data?: WorkItemType[];
        };
        space?: Space;
    };
}
export declare class WorkItemTypeField {
    description?: string;
    label: string;
    required: boolean;
    type: {
        componentType?: string;
        baseType?: string;
        kind: string;
        values?: string[];
    };
}
export interface WorkItemTypeService extends WorkItemType {
}
export interface WorkItemTypeUI extends modelUI {
    icon: string;
    version: number;
    type: string;
    description: string;
    childTypes: any;
    fields: Map<string, WorkItemTypeField>;
}
export declare class WorkItemTypeMapper implements Mapper<WorkItemTypeService, WorkItemTypeUI> {
    serviceToUiMapTree: MapTree;
    uiToServiceMapTree: MapTree;
    toUIModel(arg: WorkItemTypeService): WorkItemTypeUI;
    toServiceModel(arg: WorkItemTypeUI): WorkItemTypeService;
}
export declare class WorkItemTypeResolver {
    private allTypes;
    constructor(allTypes?: WorkItemTypeUI[]);
    resolveChildren(): void;
    getResolvedWorkItemTypes(): WorkItemTypeUI[];
}
