import 'multer';
import LRUCache from 'lru-cache';
import { ActivityPubActorType, ActorImageType } from '../../shared/models';
import { MAccountDefault, MActor, MChannelDefault } from '../types/models';
declare function buildActorInstance(type: ActivityPubActorType, url: string, preferredUsername: string): MActor;
declare function updateLocalActorImageFile(accountOrChannel: MAccountDefault | MChannelDefault, imagePhysicalFile: Express.Multer.File, type: ActorImageType): Promise<import("../models/actor/actor-image").ActorImageModel>;
declare function deleteLocalActorImageFile(accountOrChannel: MAccountDefault | MChannelDefault, type: ActorImageType): Promise<import("../models/actor/actor-image").ActorImageModel>;
declare type DownloadImageQueueTask = {
    fileUrl: string;
    filename: string;
    type: ActorImageType;
};
declare function pushActorImageProcessInQueue(task: DownloadImageQueueTask): Promise<void>;
declare const actorImagePathUnsafeCache: LRUCache<string, string>;
export { actorImagePathUnsafeCache, updateLocalActorImageFile, deleteLocalActorImageFile, pushActorImageProcessInQueue, buildActorInstance };
//# sourceMappingURL=local-actor.d.ts.map