import { Rpc } from "../../../helpers";
import { MsgRequestData, MsgRequestDataResponse, MsgReportData, MsgReportDataResponse, MsgCreateDataSource, MsgCreateDataSourceResponse, MsgEditDataSource, MsgEditDataSourceResponse, MsgCreateOracleScript, MsgCreateOracleScriptResponse, MsgEditOracleScript, MsgEditOracleScriptResponse, MsgActivate, MsgActivateResponse, MsgUpdateParams, MsgUpdateParamsResponse } from "./tx";
/** Msg defines the oracle Msg service. */
export interface Msg {
    /** RequestData defines a method for submitting a new request. */
    requestData(request: MsgRequestData): Promise<MsgRequestDataResponse>;
    /** ReportData defines a method for reporting a data to resolve the request. */
    reportData(request: MsgReportData): Promise<MsgReportDataResponse>;
    /** CreateDataSource defines a method for creating a new data source. */
    createDataSource(request: MsgCreateDataSource): Promise<MsgCreateDataSourceResponse>;
    /** EditDataSource defines a method for editing an existing data source. */
    editDataSource(request: MsgEditDataSource): Promise<MsgEditDataSourceResponse>;
    /** CreateOracleScript defines a method for creating a new oracle script. */
    createOracleScript(request: MsgCreateOracleScript): Promise<MsgCreateOracleScriptResponse>;
    /** EditOracleScript defines a method for editing an existing oracle script. */
    editOracleScript(request: MsgEditOracleScript): Promise<MsgEditOracleScriptResponse>;
    /** Activate defines a method for applying to be an oracle validator. */
    activate(request: MsgActivate): Promise<MsgActivateResponse>;
    /**
     * UpdateParams defines a governance operation for updating the x/oracle module
     * parameters.
     *
     * Since: cosmos-sdk 0.47
     */
    updateParams(request: MsgUpdateParams): Promise<MsgUpdateParamsResponse>;
}
export declare class MsgClientImpl implements Msg {
    private readonly rpc;
    constructor(rpc: Rpc);
    requestData(request: MsgRequestData): Promise<MsgRequestDataResponse>;
    reportData(request: MsgReportData): Promise<MsgReportDataResponse>;
    createDataSource(request: MsgCreateDataSource): Promise<MsgCreateDataSourceResponse>;
    editDataSource(request: MsgEditDataSource): Promise<MsgEditDataSourceResponse>;
    createOracleScript(request: MsgCreateOracleScript): Promise<MsgCreateOracleScriptResponse>;
    editOracleScript(request: MsgEditOracleScript): Promise<MsgEditOracleScriptResponse>;
    activate(request: MsgActivate): Promise<MsgActivateResponse>;
    updateParams(request: MsgUpdateParams): Promise<MsgUpdateParamsResponse>;
}
