import type { UmbDocumentDetailModel } from '../../types.js';
import type { UmbControllerHost } from '../../../../../libs/controller-api/index.js';
import type { UmbVariantId } from '../../../../core/variant/index.js';
import type { UmbEntityUnique } from '../../../../core/entity/index.js';
import type { UmbDataSourceResponse } from '../../../../core/repository/index.js';
/**
 * A server data source for Document Validation
 */
export declare class UmbDocumentValidationServerDataSource {
    #private;
    constructor(host: UmbControllerHost);
    /**
     * Validate a new Document on the server
     * @param {UmbDocumentDetailModel} model - Document Model
     * @param parentUnique - Parent Unique
     * @returns {*}
     */
    validateCreate(model: UmbDocumentDetailModel, parentUnique?: UmbEntityUnique): Promise<UmbDataSourceResponse<string>>;
    /**
     * Validate a existing Document
     * @param {UmbDocumentDetailModel} model - Document Model
     * @param {Array<UmbVariantId>} variantIds - Variant Ids
     * @returns {*}
     */
    validateUpdate(model: UmbDocumentDetailModel, variantIds: Array<UmbVariantId>): Promise<UmbDataSourceResponse<string>>;
}
