import { Store } from '@ngrx/store';
import { Observable } from 'rxjs';
import { AppState } from './../states/app.state';
import { Mapper, MapTree, modelService, modelUI } from './common.model';
export declare class LabelModel extends modelService {
    attributes: LabelAttributes;
    links?: LabelLinks;
    relationships?: LabelRelationships;
}
export declare class LabelAttributes {
    'background-color'?: string;
    'border-color'?: string;
    'created-at'?: string;
    name: string;
    'text-color'?: string;
    'updated-at'?: string;
    version?: number;
}
export declare class LabelLinks {
    related: string;
    self: string;
}
export declare class LabelRelationships {
    space: {
        data: {
            id: string;
            type: string;
        };
        links: {
            related: string;
            self: string;
        };
    };
}
export interface LabelService extends LabelModel {
}
export interface LabelUI extends modelUI {
    version: number;
    backgroundColor: string;
    borderColor: string;
    textColor: string;
}
export declare class LabelMapper implements Mapper<LabelService, LabelUI> {
    serviceToUiMapTree: MapTree;
    uiToServiceMapTree: MapTree;
    toUIModel(arg: LabelService): LabelUI;
    toServiceModel(arg: LabelUI): LabelService;
}
export declare class LabelQuery {
    private store;
    constructor(store: Store<AppState>);
    private plannerSelector;
    private labelSelector;
    private getAllLabelsSelector;
    private getLabelEntities;
    getLables(): Observable<LabelUI[]>;
    readonly getlabelNames: Observable<string[]>;
    getLabelObservableById(number: string): Observable<LabelUI>;
    getLabelObservablesByIds(ids: string[]): Observable<LabelUI[]>;
}
