import { AmplifyContext } from '@aws-amplify/core';
import { MqttOptions, MqttOverWS } from './MqttOverWS';
export interface AWSIoTOptions extends MqttOptions {
    region?: string;
    endpoint?: string;
}
export declare class AWSIoT extends MqttOverWS {
    /**
     * Resolve the AmplifyContext for this provider (fresh per operation).
     * - If an explicit ctx was passed at construction, it is pinned (fixed context by design).
     * - Otherwise, the global context is resolved fresh per access so that reconfiguration
     *   (setGlobalContext with a new AmplifyContext) is honored across operations.
     * @private
     */
    private readonly _resolveCtx;
    constructor(ctx: AmplifyContext | undefined, options?: AWSIoTOptions);
    constructor(options?: AWSIoTOptions);
    protected get region(): string | undefined;
    protected get endpoint(): Promise<string>;
}
