import { UserGroupBuilder } from './userGroupBuilder';
import { UserGroupDocumentPermissionBuilder } from './userGroupDocumentPermissionBuilder';
import { UserGroupElementPermissionBuilder } from './userGroupElementPermissionBuilder';
import { UserGroupPropertyValuePermissionBuilder } from './userGroupPropertyValuePermissionBuilder';
export declare class UserGroupPermissionBuilder {
    parentBuilder: UserGroupBuilder;
    permissionBuilders: (UserGroupDocumentPermissionBuilder | UserGroupElementPermissionBuilder | UserGroupPropertyValuePermissionBuilder)[];
    constructor(parentBuilder: UserGroupBuilder);
    addDocumentPermission(): UserGroupDocumentPermissionBuilder;
    addElementPermission(): UserGroupElementPermissionBuilder;
    addPropertyValuePermission(): UserGroupPropertyValuePermissionBuilder;
    done(): UserGroupBuilder;
    build(): ({
        $type: string;
        document: {
            id: string;
        } | null;
        verbs: any[];
    } | {
        $type: string;
        element: {
            id: string;
        } | null;
        verbs: any[];
    } | {
        $type: string;
        documentType: {
            id: string;
        } | null;
        propertyType: {
            id: string;
        } | null;
        verbs: any[];
    })[];
}
