import { Node } from '@alfresco/js-api';
import { BasicPropertiesService } from './basic-properties.service';
import { Observable, Subject } from 'rxjs';
import { PropertyGroupTranslatorService } from './property-groups-translator.service';
import { CardViewItem } from '@alfresco/adf-core';
import { CardViewGroup, OrganisedPropertyGroup, PresetConfig } from '../interfaces/content-metadata.interfaces';
import { ContentMetadataConfigFactory } from './config/content-metadata-config.factory';
import { PropertyDescriptorsService } from './property-descriptors.service';
import { ContentTypePropertiesService } from './content-type-property.service';
import * as i0 from "@angular/core";
export declare class ContentMetadataService {
    private basicPropertiesService;
    private contentMetadataConfigFactory;
    private propertyGroupTranslatorService;
    private propertyDescriptorsService;
    private contentTypePropertyService;
    error: Subject<{
        statusCode: number;
        message: string;
    }>;
    constructor(basicPropertiesService: BasicPropertiesService, contentMetadataConfigFactory: ContentMetadataConfigFactory, propertyGroupTranslatorService: PropertyGroupTranslatorService, propertyDescriptorsService: PropertyDescriptorsService, contentTypePropertyService: ContentTypePropertiesService);
    getBasicProperties(node: Node): Observable<CardViewItem[]>;
    getContentTypeProperty(node: Node): Observable<CardViewItem[]>;
    openConfirmDialog(changedProperties: any): Observable<any>;
    getGroupedProperties(node: Node, preset?: string | PresetConfig): Observable<CardViewGroup[]>;
    setTitleToNameIfNotSet(propertyGroups: OrganisedPropertyGroup[]): OrganisedPropertyGroup[];
    filterEmptyPreset(propertyGroups: OrganisedPropertyGroup[]): OrganisedPropertyGroup[];
    static ɵfac: i0.ɵɵFactoryDeclaration<ContentMetadataService, never>;
    static ɵprov: i0.ɵɵInjectableDeclaration<ContentMetadataService>;
}
