import { IJsonSchema } from '@jacquesparis/objects-model';
import { ContentEntityService, ContentEntityServiceInterface, EntityWithContent } from './content-entity.service';
export interface ContentFileEntity {
    base64?: string;
    size?: string;
    name?: string;
    type?: string;
    id?: string;
    uri?: string;
}
export declare class ContentFileService implements ContentEntityServiceInterface {
    contentEntityService: ContentEntityService;
    private storageDirectory;
    providerId: string;
    serviceId: string;
    constructor(contentEntityService: ContentEntityService, storageDirectory: string);
    protected getDirPath(entity: EntityWithContent): string;
    protected getFilePath(entity: EntityWithContent, fieldName: string): string;
    deleteContents(entities: EntityWithContent[], fieldName?: string): Promise<void>;
    manageContent(entity: EntityWithContent, postedEntity: EntityWithContent, fieldName?: string): Promise<boolean>;
    getContentDefinition(): Promise<IJsonSchema>;
    addTransientContent(entity: EntityWithContent): Promise<void>;
    getContent(entity: EntityWithContent, fieldName: string, args: {
        contentId?: string;
    }): Promise<{
        filePath: string;
        fileName: string;
    }>;
}
