import { EnterprisePropertyDataTypeProviderRegistration } from "..";
import { ApiPath } from "../Extends";
import { GuidValue } from "@omnia/fx-models/internal-do-not-import-from-here/shared/models";
import { IMessageBusTopicSubscription } from "../Messaging";
export interface IInternalRegistrationEnterprisePropertyDataTypeProvider extends IRegistrationEnterprisePropertyDataTypeProvider {
    getAllEnterprisePropertyDataTypeProvider: () => EnterprisePropertyDataTypeProviderRegistration[];
    onEnterprisePropertyDataTypeProviderRegistrationChange: () => IMessageBusTopicSubscription<EnterprisePropertyDataTypeProviderRegistration[]>;
    getEnterprisePropertyDataTypeProviderById: (providerId: GuidValue) => EnterprisePropertyDataTypeProviderRegistration;
}
export interface IRegistrationEnterprisePropertyDataTypeProvider {
    registerEnterprisePropertyDataTypeProvider: (items: EnterprisePropertyDataTypeProviderRegistration | EnterprisePropertyDataTypeProviderRegistration[]) => void;
}
export interface IRegistrationEnterprisePropertyDataTypeProviderApi {
    registration: Promise<IRegistrationEnterprisePropertyDataTypeProvider>;
}
declare module "./UxApi" {
    interface IOmniaUxApi {
        enterprisePropertyDataTypeProvider: IRegistrationEnterprisePropertyDataTypeProviderApi;
    }
    interface IOmniaUxExtendApiManifest {
        enterprisePropertyDataTypeProvider: {
            registration: ApiPath;
        };
    }
}
