///
import fs from "fs";
import { AddToIpfs } from "../../utils/add.to.ipfs";
export declare type UploadManifest = (imageReference: string | undefined, privateKey: string) => Promise;
export declare type ChainSetting = {
shards: number;
target: number;
};
export declare type ChainSettings = {
[id: string]: ChainSetting;
};
export default function provideUploadManifest(filesystem: typeof fs, addToIpfs: AddToIpfs, agentName: string, agentDisplayName: string, description: string, longDescription: string, agentId: string, version: string, documentation: string, repository: string, licenseUrl: string, promoUrl: string, cliVersion: string, chainIds: number[], external: boolean, chainSettings?: ChainSettings): UploadManifest;