/**
 * Farcaster Hub REST API
 * Perform basic queries of Farcaster state via the REST API of a Farcaster hub. See the [Farcaster docs](https://www.thehubble.xyz/docs/httpapi/httpapi.html) for more details. Some client libraries:   - [TypeScript](https://www.npmjs.com/package/@standard-crypto/farcaster-js-hub-rest)
 *
 * The version of the OpenAPI document: 1.0
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
/// <reference types="node" />
import type { Configuration } from '../configuration.js';
import type { AxiosPromise, AxiosInstance, AxiosRequestConfig } from 'axios';
import globalAxios from 'axios';
import { RequestArgs, BaseAPI } from '../base.js';
import { Message } from '../models/index.js';
/**
 * SubmitMessageApi - axios parameter creator
 * @export
 */
export declare const SubmitMessageApiAxiosParamCreator: (configuration?: Configuration) => {
    /**
     *
     * @summary Submit a signed protobuf-serialized message to the Hub
     * @param {Buffer} body *  A Message is a delta operation on the Farcaster network. The message protobuf is an envelope  that wraps a MessageData object and contains a hash and signature which can verify its authenticity.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    submitMessage: (body: Buffer, options?: AxiosRequestConfig) => Promise<RequestArgs>;
};
/**
 * SubmitMessageApi - functional programming interface
 * @export
 */
export declare const SubmitMessageApiFp: (configuration?: Configuration) => {
    /**
     *
     * @summary Submit a signed protobuf-serialized message to the Hub
     * @param {Buffer} body *  A Message is a delta operation on the Farcaster network. The message protobuf is an envelope  that wraps a MessageData object and contains a hash and signature which can verify its authenticity.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    submitMessage(body: Buffer, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<Message>>;
};
/**
 * SubmitMessageApi - factory interface
 * @export
 */
export declare const SubmitMessageApiFactory: (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) => {
    /**
     *
     * @summary Submit a signed protobuf-serialized message to the Hub
     * @param {SubmitMessageApiSubmitMessageRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    submitMessage(requestParameters: SubmitMessageApiSubmitMessageRequest, options?: AxiosRequestConfig): AxiosPromise<Message>;
};
/**
 * Request parameters for submitMessage operation in SubmitMessageApi.
 * @export
 * @interface SubmitMessageApiSubmitMessageRequest
 */
export interface SubmitMessageApiSubmitMessageRequest {
    /**
     * *  A Message is a delta operation on the Farcaster network. The message protobuf is an envelope  that wraps a MessageData object and contains a hash and signature which can verify its authenticity.
     * @type {Buffer}
     * @memberof SubmitMessageApiSubmitMessage
     */
    readonly body: Buffer;
}
/**
 * SubmitMessageApi - object-oriented interface
 * @export
 * @class SubmitMessageApi
 * @extends {BaseAPI}
 */
export declare class SubmitMessageApi extends BaseAPI {
    /**
     *
     * @summary Submit a signed protobuf-serialized message to the Hub
     * @param {SubmitMessageApiSubmitMessageRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof SubmitMessageApi
     */
    submitMessage(requestParameters: SubmitMessageApiSubmitMessageRequest, options?: AxiosRequestConfig): Promise<globalAxios.AxiosResponse<Message, any>>;
}
