import { ResourceBase } from "../../resource";
import { Value, List, MapOf } from "../../data-types";
export declare class MethodResponse {
    ResponseModels?: MapOf<Value<string>>;
    ResponseParameters?: MapOf<Value<boolean>>;
    StatusCode: Value<string>;
    constructor(properties: MethodResponse);
}
export declare class Integration {
    PassthroughBehavior?: Value<string>;
    CacheKeyParameters?: List<Value<string>>;
    RequestTemplates?: MapOf<Value<string>>;
    TimeoutInMillis?: Value<number>;
    Uri?: Value<string>;
    ConnectionType?: Value<string>;
    CacheNamespace?: Value<string>;
    ConnectionId?: Value<string>;
    RequestParameters?: MapOf<Value<string>>;
    Type?: Value<string>;
    Credentials?: Value<string>;
    IntegrationHttpMethod?: Value<string>;
    ContentHandling?: Value<string>;
    IntegrationResponses?: List<IntegrationResponse>;
    constructor(properties: Integration);
}
export declare class IntegrationResponse {
    ContentHandling?: Value<string>;
    ResponseParameters?: MapOf<Value<string>>;
    ResponseTemplates?: MapOf<Value<string>>;
    SelectionPattern?: Value<string>;
    StatusCode: Value<string>;
    constructor(properties: IntegrationResponse);
}
export interface MethodProperties {
    RestApiId: Value<string>;
    AuthorizerId?: Value<string>;
    ApiKeyRequired?: Value<boolean>;
    ResourceId: Value<string>;
    HttpMethod: Value<string>;
    MethodResponses?: List<MethodResponse>;
    OperationName?: Value<string>;
    AuthorizationType?: Value<string>;
    Integration?: Integration;
    AuthorizationScopes?: List<Value<string>>;
    RequestModels?: MapOf<Value<string>>;
    RequestParameters?: MapOf<Value<boolean>>;
    RequestValidatorId?: Value<string>;
}
export default class Inner_Method extends ResourceBase<MethodProperties> {
    static MethodResponse: typeof MethodResponse;
    static Integration: typeof Integration;
    static IntegrationResponse: typeof IntegrationResponse;
    constructor(properties: MethodProperties);
}
