import { SdkClient } from "../common/sdk-client";
import { MessageBrokerModels } from "./messagebroker-models";
export declare class MessageBrokerClient extends SdkClient {
    private _baseUrl;
    /**
     * * Subscribers
     *
     * Managing subscribers - create or update a subscription to the given topic.
     *
     * @param {string} id
     * @param {string} versionId
     * @param {string} topicId
     *
     * TopicId string
     * pattern: mdsp\.[a-z0-9-_]+\.[a-z0-9-_]+\.v[0-9]+\.(pubsub|postbox)\.[a-z0-9-_.]+
     * maxLength: 255
     *
     * @example: mdsp.core.am.v1.postbox.asset.deleted
     * Id of the topic. Format: mdsp.{tenant}.{service}.v{version}.{type}.{additional}
     *
     * @param {MessageBrokerModels.SubscriberTopicInput} subscription
     * @returns {Promise<MessageBrokerModels.SubscriberTopicInput>}
     *
     * @memberOf MessageBrokerClient
     */
    PutSubscription(id: string, versionId: string, topicId: string, subscription: MessageBrokerModels.SubscriberTopicInput): Promise<MessageBrokerModels.SubscriberTopicInput>;
    /**
     * * Subscribers
     *
     * Get the subscription.
     *
     * @param {string} id
     * @param {string} versionId
     * @param {string} topicId
     *
     * TopicId string
     * pattern: mdsp\.[a-z0-9-_]+\.[a-z0-9-_]+\.v[0-9]+\.(pubsub|postbox)\.[a-z0-9-_.]+
     * maxLength: 255
     *
     * @example: mdsp.core.am.v1.postbox.asset.deleted
     * Id of the topic. Format: mdsp.{tenant}.{service}.v{version}.{type}.{additional}
     *
     * @returns {Promise<MessageBrokerModels.SubscriberTopicInput>}
     *
     * @memberOf MessageBrokerClient
     */
    GetSubscription(id: string, versionId: string, topicId: string): Promise<MessageBrokerModels.SubscriberTopicInput>;
    /**
     * * Subscribers
     *
     * Delete the subscription.
     *
     * @param {string} id
     * @param {string} versionId
     * @param {string} topicId
     *
     * TopicId string
     * pattern: mdsp\.[a-z0-9-_]+\.[a-z0-9-_]+\.v[0-9]+\.(pubsub|postbox)\.[a-z0-9-_.]+
     * maxLength: 255
     * @example: mdsp.core.am.v1.postbox.asset.deleted
     * Id of the topic. Format: mdsp.{tenant}.{service}.v{version}.{type}.{additional}
     *
     * @memberOf MessageBrokerClient
     */
    DeleteSubscription(id: string, versionId: string, topicId: string): Promise<void>;
    /**
     * * Publishes new message to the given topic.
     *
     * @param {string} id
     * Id of the topic. Format: mdsp.{tenant}.{service}.v{version}.{type}.{additional}
     *
     * @param {MessageBrokerModels.Messages} message
     * Input for posting a message on given postbox topic only. The content is what the sender sends and is not modified.
     *
     * @memberOf MessageBrokerClient
     */
    SendMessage(id: string, message: MessageBrokerModels.Messages): Promise<void>;
}
