/**
 * avoid importing any (non-type) legacy code here. otherwise, PreviewTask will throw cryptic errors
 */
import type { ExtensionDataEntry } from '@teambit/legacy/dist/consumer/config/extension-data';
import { ComponentID } from '@teambit/component-id';
import { RawComponentMetadata } from './component-interface';
export type Serializable = {
    toString(): string;
};
export type SerializableMap = {
    [key: string]: Serializable;
};
export type AspectData = {
    [key: string]: any;
};
export type ResolveComponentIdFunc = (id: string) => Promise<ComponentID>;
export declare class AspectEntry {
    id: ComponentID;
    private legacyEntry;
    constructor(id: ComponentID, legacyEntry: ExtensionDataEntry);
    get legacy(): ExtensionDataEntry;
    get isLegacy(): boolean;
    get config(): {
        [key: string]: any;
    };
    set config(config: {
        [key: string]: any;
    });
    get data(): {
        [key: string]: any;
    };
    get isRemoved(): boolean;
    set data(val: {
        [key: string]: any;
    });
    transform(newData: SerializableMap): AspectEntry;
    clone(): AspectEntry;
    serialize(): RawComponentMetadata;
}
