import { Express, Request, Response } from "express";
import { IWebServiceEndpoint, IExpressRequestHandler, IEndpointAuthzOptions } from "@hyperledger/cactus-core-api";
import { LogLevelDesc, IAsyncProvider } from "@hyperledger/cactus-common";
import { PluginLedgerConnectorStub } from "../plugin-ledger-connector-stub";
export interface IDeployContractEndpointOptions {
    logLevel?: LogLevelDesc;
    connector: PluginLedgerConnectorStub;
}
export declare class DeployContractEndpoint implements IWebServiceEndpoint {
    readonly options: IDeployContractEndpointOptions;
    static readonly CLASS_NAME = "DeployContractEndpoint";
    static readonly OAUTH2_SCOPES: string[];
    private readonly log;
    get className(): string;
    constructor(options: IDeployContractEndpointOptions);
    getOasPath(): {
        post: {
            operationId: string;
            "x-hyperledger-cacti": {
                http: {
                    path: string;
                    verbLowerCase: string;
                };
            };
        };
    };
    getPath(): string;
    getVerbLowerCase(): string;
    getOperationId(): string;
    getAuthorizationOptionsProvider(): IAsyncProvider<IEndpointAuthzOptions>;
    registerExpress(expressApp: Express): Promise<IWebServiceEndpoint>;
    getExpressRequestHandler(): IExpressRequestHandler;
    handleRequest(req: Request, res: Response): Promise<void>;
}
