/**
* @module "ethpm/storage/ipfs"
*/
///
import { URL } from 'url';
import * as t from 'io-ts';
import { Maybe } from "../../types";
import * as config from "../../config";
import * as storage from "./..";
interface IpfsOptions {
host: string;
port: number | string;
protocol: string;
}
export declare class IpfsService implements storage.Service {
private host;
private port;
private protocol;
private ipfs;
constructor(options: IpfsOptions);
write(content: string): Promise;
read(uri: URL): Promise>;
hash(content: string): Promise;
predictUri(content: string): Promise;
}
export default class IpfsConnector extends config.Connector {
optionsType: t.TypeC<{
ipfs: t.TypeC<{
host: t.StringC;
port: t.UnionC<[t.NumberC, t.StringC]>;
protocol: t.StringC;
}>;
}>;
/**
* Construct IpfsService and load with specified contents
*/
init(options: {
ipfs: IpfsOptions;
}): Promise;
}
export {};