import { type Metadata } from "../common/Metadata.js";
import { type Assert } from "./common/Assert.js";
import { type RefAndEndpoint } from "./common/RefAndEndpoint.js";
import { type Variable } from "./common/Variable.js";
/** Copyright Super iPaaS Integration LLC, an IBM Company 2024 */
/** The API testing related information for testing API is captured in the message */
export interface Test {
    kind?: string | undefined;
    metadata?: Metadata | undefined;
    spec?: Test_Spec | undefined;
    kindEnum?: Test_KindEnums | undefined;
    apiVersion?: string | undefined;
}
/** Kind id supported for Test sequence */
export declare enum Test_KindEnums {
    Test = "Test"
}
export interface Test_Environment {
    $ref?: string | undefined;
    variables?: Variable[] | undefined;
}
export interface Test_Headers {
    key?: string | undefined;
    value?: string | undefined;
    description?: string | undefined;
}
export interface Test_Auth {
    noauth?: boolean | undefined;
    bearerToken?: string | undefined;
    basicAuth?: Test_Auth_BasicAuth | undefined;
}
export interface Test_Auth_BasicAuth {
    username?: string | undefined;
    password?: string | undefined;
}
export interface Test_Raw {
    json?: string | undefined;
    js?: string | undefined;
    html?: string | undefined;
    xml?: string | undefined;
}
export interface Test_UrlEncodedFormData {
    key?: string | undefined;
    value?: string | undefined;
    type?: string | undefined;
}
export interface Test_Payload {
    raw?: Test_Raw | undefined;
    urlEncodedFormData?: Test_UrlEncodedFormData[] | undefined;
    formData?: Test_FormData[] | undefined;
}
export interface Test_Settings {
    sslVerification?: boolean | undefined;
    encodeURL?: boolean | undefined;
}
export interface Test_Assertions {
    $ref?: string | undefined;
    expressions?: Assert[] | undefined;
}
export interface Test_Parameters {
    key?: string | undefined;
    value?: string | undefined;
    description?: string | undefined;
}
export interface Test_FormData {
    key?: string | undefined;
    type?: string | undefined;
    value?: string | undefined;
}
export interface Test_Request {
    method?: string | undefined;
    resource?: string | undefined;
    headers?: Test_Headers[] | undefined;
    auth?: Test_Auth | undefined;
    payload?: Test_Payload | undefined;
    settings?: Test_Settings | undefined;
    assertions?: Test_Assertions | undefined;
    parameters?: Test_Parameters[] | undefined;
    var?: string | undefined;
}
export interface Test_Spec {
    api?: RefAndEndpoint | undefined;
    environment?: Test_Environment | undefined;
    request?: Test_Request[] | undefined;
}
//# sourceMappingURL=Test.d.ts.map