import { HttpHandlerOptions as __HttpHandlerOptions } from "@smithy/types";
import { BedrockRuntimeClient } from "./BedrockRuntimeClient";
import {
  InvokeModelCommandInput,
  InvokeModelCommandOutput,
} from "./commands/InvokeModelCommand";
import {
  InvokeModelWithResponseStreamCommandInput,
  InvokeModelWithResponseStreamCommandOutput,
} from "./commands/InvokeModelWithResponseStreamCommand";
export interface BedrockRuntime {
  invokeModel(
    args: InvokeModelCommandInput,
    options?: __HttpHandlerOptions
  ): Promise<InvokeModelCommandOutput>;
  invokeModel(
    args: InvokeModelCommandInput,
    cb: (err: any, data?: InvokeModelCommandOutput) => void
  ): void;
  invokeModel(
    args: InvokeModelCommandInput,
    options: __HttpHandlerOptions,
    cb: (err: any, data?: InvokeModelCommandOutput) => void
  ): void;
  invokeModelWithResponseStream(
    args: InvokeModelWithResponseStreamCommandInput,
    options?: __HttpHandlerOptions
  ): Promise<InvokeModelWithResponseStreamCommandOutput>;
  invokeModelWithResponseStream(
    args: InvokeModelWithResponseStreamCommandInput,
    cb: (err: any, data?: InvokeModelWithResponseStreamCommandOutput) => void
  ): void;
  invokeModelWithResponseStream(
    args: InvokeModelWithResponseStreamCommandInput,
    options: __HttpHandlerOptions,
    cb: (err: any, data?: InvokeModelWithResponseStreamCommandOutput) => void
  ): void;
}
export declare class BedrockRuntime
  extends BedrockRuntimeClient
  implements BedrockRuntime {}
