import { Account } from './Account';
import { ITopic } from './Interfaces';
import { OpenStack } from './OpenStack';
import { Region } from './Region';
export declare class Topic implements ITopic {
    constructor(name: string, account: Account, region?: string | Region);
    getName(): string;
    getAccount(): Account;
    getRegion(): Region;
    getAttrsP(): any;
    setAttrsP(options: any): any;
    listP(prefix?: string, pageSize?: number, pageMarker?: string): any;
    subscribeP(name: string, endPoint: string, notifyStrategy?: string, notifyContentFormat?: string, filterTag?: string): any;
    unsubscribeP(name: string): any;
    publishP(msg: string, b64: boolean, tag?: string, attrs?: any, options?: any): any;
    protected utf8ToBase64(src: any): string;
    private makeAttrURL;
    private makeSubscriptionURL;
    private makePublishURL;
    private _urlSubscription;
    private _urlPublish;
    protected _openStack: OpenStack;
    private _name;
    private _region;
    private _account;
    private _urlAttr;
    private _pattern;
}
