import { ITenantAttribute } from '../services/api/DataHub/Attributes';
import { ITenantAttributeScope } from '../services/api/DataHub/Scopes';
import { ITenantAttributeLanguage } from '../services/api/DataHub/Languages';
import { ILangScopeItem, IBlockedAttribute } from './external/dataTypes/models';

declare function __VLS_template(): Readonly<{
    prepend?: (props: {
        attribute: ITenantAttribute;
        scope?: ITenantAttributeScope;
        language?: ITenantAttributeLanguage;
        readonly?: boolean;
        loading?: boolean;
        isBlocked?: boolean;
    }) => void;
}> & {
    prepend?: (props: {
        attribute: ITenantAttribute;
        scope?: ITenantAttributeScope;
        language?: ITenantAttributeLanguage;
        readonly?: boolean;
        loading?: boolean;
        isBlocked?: boolean;
    }) => void;
};
declare const __VLS_component: import('vue').DefineComponent<import('vue').ExtractPropTypes<{
    modelValue: import('vue').PropType<object>;
    attribute: {
        type: import('vue').PropType<ITenantAttribute<import('..').IDataTypesAttributeConfigurationAbstract>>;
    };
    blockedAttribute: {
        type: import('vue').PropType<IBlockedAttribute>;
    };
    scope: {
        type: import('vue').PropType<ITenantAttributeScope>;
    };
    language: {
        type: import('vue').PropType<ITenantAttributeLanguage>;
    };
    selection: {
        type: import('vue').PropType<ILangScopeItem[]>;
    };
    prefix: {
        type: import('vue').PropType<string>;
    };
    readonly: {
        type: import('vue').PropType<boolean>;
    };
    loading: {
        type: import('vue').PropType<boolean>;
    };
    scopable: {
        type: import('vue').PropType<boolean>;
    };
    multilanguage: {
        type: import('vue').PropType<boolean>;
    };
}>, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
    edited: (fieldName: string, value: unknown) => void;
}, string, import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<{
    modelValue: import('vue').PropType<object>;
    attribute: {
        type: import('vue').PropType<ITenantAttribute<import('..').IDataTypesAttributeConfigurationAbstract>>;
    };
    blockedAttribute: {
        type: import('vue').PropType<IBlockedAttribute>;
    };
    scope: {
        type: import('vue').PropType<ITenantAttributeScope>;
    };
    language: {
        type: import('vue').PropType<ITenantAttributeLanguage>;
    };
    selection: {
        type: import('vue').PropType<ILangScopeItem[]>;
    };
    prefix: {
        type: import('vue').PropType<string>;
    };
    readonly: {
        type: import('vue').PropType<boolean>;
    };
    loading: {
        type: import('vue').PropType<boolean>;
    };
    scopable: {
        type: import('vue').PropType<boolean>;
    };
    multilanguage: {
        type: import('vue').PropType<boolean>;
    };
}>> & Readonly<{
    onEdited?: (fieldName: string, value: unknown) => any;
}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>;
declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, ReturnType<typeof __VLS_template>>;
export default _default;
type __VLS_WithTemplateSlots<T, S> = T & {
    new (): {
        $slots: S;
    };
};
