import type { Asset, IntlString, Metadata, Plugin, StatusCode } from '@hcengineering/platform';
import type { BenchmarkDoc } from './benchmark';
import { TxAccessLevel } from './classes';
import type { Account, AnyAttribute, ArrOf, Association, AttachedDoc, Blob, Class, Collection, Configuration, ConfigurationElement, Doc, DomainIndexConfiguration, Enum, EnumOf, FullTextSearchContext, Hyperlink, IndexingConfiguration, Interface, MarkupBlobRef, MigrationState, Mixin, Obj, Permission, PersonId, PluginConfiguration, Rank, Ref, RefTo, RelatedDocument, Relation, Role, Sequence, CustomSequence, Space, SpaceType, SpaceTypeDescriptor, SystemSpace, Timestamp, TransientConfiguration, Type, TypeAny, TypedSpace, UserStatus, Version, AccountUuid, ClassCollaborators, Collaborator } from './classes';
import { type Status, type StatusCategory } from './status';
import type { Tx, TxApplyIf, TxCUD, TxCreateDoc, TxDomainEvent, TxMixin, TxModelUpgrade, TxRemoveDoc, TxUpdateDoc, TxWorkspaceEvent } from './tx';
/**
 * @public
 */
export declare const coreId: Plugin;
/**
 * @public
 */
export declare const systemAccountEmail = "anticrm@hc.engineering";
export declare const systemAccountUuid: AccountUuid;
export declare const systemAccount: Account;
export declare const configUserAccountUuid: AccountUuid;
export declare const readOnlyGuestAccountUuid: AccountUuid;
declare const _default: {
    class: {
        Obj: Ref<Class<Obj>>;
        Doc: Ref<Class<Doc>>;
        Blob: Ref<Class<Blob>>;
        AttachedDoc: Ref<Class<AttachedDoc>>;
        Class: Ref<Class<Class<Obj>>>;
        Mixin: Ref<Class<Mixin<Doc>>>;
        Interface: Ref<Class<Interface<Doc>>>;
        Attribute: Ref<Class<AnyAttribute>>;
        Tx: Ref<Class<Tx>>;
        TxModelUpgrade: Ref<Class<TxModelUpgrade>>;
        TxWorkspaceEvent: Ref<Class<TxWorkspaceEvent>>;
        TxDomainEvent: Ref<Class<TxDomainEvent>>;
        TxApplyIf: Ref<Class<TxApplyIf>>;
        TxCUD: Ref<Class<TxCUD<Doc>>>;
        TxCreateDoc: Ref<Class<TxCreateDoc<Doc>>>;
        TxMixin: Ref<Class<TxMixin<Doc, Doc>>>;
        TxUpdateDoc: Ref<Class<TxUpdateDoc<Doc>>>;
        TxRemoveDoc: Ref<Class<TxRemoveDoc<Doc>>>;
        Space: Ref<Class<Space>>;
        SystemSpace: Ref<Class<SystemSpace>>;
        TypedSpace: Ref<Class<TypedSpace>>;
        SpaceTypeDescriptor: Ref<Class<SpaceTypeDescriptor>>;
        SpaceType: Ref<Class<SpaceType>>;
        Role: Ref<Class<Role>>;
        Permission: Ref<Class<Permission>>;
        Type: Ref<Class<Type<any>>>;
        TypeRelation: Ref<Class<Type<string>>>;
        TypeString: Ref<Class<Type<string>>>;
        TypeBlob: Ref<Class<Type<Ref<Blob>>>>;
        TypeIntlString: Ref<Class<Type<IntlString>>>;
        TypeHyperlink: Ref<Class<Type<Hyperlink>>>;
        TypeNumber: Ref<Class<Type<number>>>;
        TypeFileSize: Ref<Class<Type<number>>>;
        TypeMarkup: Ref<Class<Type<string>>>;
        TypeRank: Ref<Class<Type<Rank>>>;
        TypeRecord: Ref<Class<Type<Record<any, any>>>>;
        TypeBoolean: Ref<Class<Type<boolean>>>;
        TypeTimestamp: Ref<Class<Type<Timestamp>>>;
        TypeDate: Ref<Class<Type<Timestamp | Date>>>;
        TypeCollaborativeDoc: Ref<Class<Type<MarkupBlobRef>>>;
        TypePersonId: Ref<Class<Type<string>>>;
        TypeAccountUuid: Ref<Class<Type<string>>>;
        TypeIdentifier: Ref<Class<Type<string>>>;
        RefTo: Ref<Class<RefTo<Doc>>>;
        ArrOf: Ref<Class<ArrOf<Doc>>>;
        Enum: Ref<Class<Enum>>;
        EnumOf: Ref<Class<EnumOf>>;
        Collection: Ref<Class<Collection<AttachedDoc>>>;
        TypeAny: Ref<Class<TypeAny>>;
        Version: Ref<Class<Version>>;
        PluginConfiguration: Ref<Class<PluginConfiguration>>;
        UserStatus: Ref<Class<UserStatus>>;
        TypeRelatedDocument: Ref<Class<Type<RelatedDocument>>>;
        DomainIndexConfiguration: Ref<Class<DomainIndexConfiguration>>;
        Configuration: Ref<Class<Configuration>>;
        Status: Ref<Class<Status>>;
        StatusCategory: Ref<Class<StatusCategory>>;
        MigrationState: Ref<Class<MigrationState>>;
        BenchmarkDoc: Ref<Class<BenchmarkDoc>>;
        FullTextSearchContext: Ref<Mixin<FullTextSearchContext>>;
        Association: Ref<Class<Association>>;
        Relation: Ref<Class<Relation>>;
        Sequence: Ref<Class<Sequence>>;
        CustomSequence: Ref<Class<CustomSequence>>;
        ClassCollaborators: Ref<Class<ClassCollaborators<Doc>>>;
        Collaborator: Ref<Class<Collaborator>>;
    };
    icon: {
        TypeString: Asset;
        TypeBlob: Asset;
        TypeHyperlink: Asset;
        TypeNumber: Asset;
        TypeMarkup: Asset;
        TypeRank: Asset;
        TypeRecord: Asset;
        TypeBoolean: Asset;
        TypeDate: Asset;
        TypeRef: Asset;
        TypeArray: Asset;
        TypeEnumOf: Asset;
        TypeCollection: Asset;
    };
    mixin: {
        ConfigurationElement: Ref<Mixin<ConfigurationElement>>;
        IndexConfiguration: Ref<Mixin<IndexingConfiguration<Doc>>>;
        SpacesTypeData: Ref<Mixin<Space>>;
        TransientConfiguration: Ref<Mixin<TransientConfiguration>>;
        TxAccessLevel: Ref<Mixin<TxAccessLevel>>;
    };
    space: {
        Tx: Ref<Space>;
        DerivedTx: Ref<Space>;
        Model: Ref<Space>;
        Space: Ref<TypedSpace>;
        Configuration: Ref<Space>;
        Workspace: Ref<Space>;
        Domain: Ref<Space>;
    };
    employee: {
        System: Ref<any>;
    };
    account: {
        System: PersonId;
        ConfigUser: PersonId;
    };
    status: {
        ObjectNotFound: StatusCode<{
            _id: Ref<Doc>;
        }>;
        ItemNotFound: StatusCode<{
            _id: Ref<Doc>;
            _localId: string;
        }>;
    };
    version: {
        Model: Ref<Version>;
    };
    string: {
        Id: IntlString;
        Space: IntlString;
        Spaces: IntlString;
        SpacesDescription: IntlString;
        TypedSpace: IntlString;
        SpaceType: IntlString;
        Modified: IntlString;
        ModifiedDate: IntlString;
        ModifiedBy: IntlString;
        Class: IntlString;
        AttachedTo: IntlString;
        AttachedToClass: IntlString;
        String: IntlString;
        Record: IntlString;
        Markup: IntlString;
        Relation: IntlString;
        Relations: IntlString;
        AddRelation: IntlString;
        Collaborative: IntlString;
        CollaborativeDoc: IntlString;
        MarkupBlobRef: IntlString;
        PersonId: IntlString;
        AccountId: IntlString;
        Number: IntlString;
        Boolean: IntlString;
        Timestamp: IntlString;
        Date: IntlString;
        IntlString: IntlString;
        Ref: IntlString;
        Collection: IntlString;
        Array: IntlString;
        Name: IntlString;
        Enum: IntlString;
        Size: IntlString;
        Description: IntlString;
        ShortDescription: IntlString;
        Descriptor: IntlString;
        TargetClass: IntlString;
        Role: IntlString;
        Roles: IntlString;
        Hyperlink: IntlString;
        Private: IntlString;
        Object: IntlString;
        System: IntlString;
        CreatedBy: IntlString;
        CreatedDate: IntlString;
        Status: IntlString;
        Account: IntlString;
        StatusCategory: IntlString;
        Rank: IntlString;
        Members: IntlString;
        Owners: IntlString;
        Permission: IntlString;
        CreateObject: IntlString;
        UpdateObject: IntlString;
        DeleteObject: IntlString;
        ForbidDeleteObject: IntlString;
        UpdateSpace: IntlString;
        ArchiveSpace: IntlString;
        CreateObjectDescription: IntlString;
        UpdateObjectDescription: IntlString;
        DeleteObjectDescription: IntlString;
        ForbidDeleteObjectDescription: IntlString;
        UpdateSpaceDescription: IntlString;
        ArchiveSpaceDescription: IntlString;
        AutoJoin: IntlString;
        AutoJoinDescr: IntlString;
    };
    descriptor: {
        SpacesType: Ref<SpaceTypeDescriptor>;
    };
    spaceType: {
        SpacesType: Ref<SpaceType>;
    };
    permission: {
        CreateObject: Ref<Permission>;
        UpdateObject: Ref<Permission>;
        DeleteObject: Ref<Permission>;
        ForbidDeleteObject: Ref<Permission>;
        UpdateSpace: Ref<Permission>;
        ArchiveSpace: Ref<Permission>;
    };
    role: {
        Admin: Ref<Role>;
    };
    metadata: {
        DisablePermissions: Metadata<boolean>;
    };
};
export default _default;
//# sourceMappingURL=component.d.ts.map