import { ResourceBase } from "../../resource";
import { Value } from "../../data-types";
export declare class AdditionalAuthenticationProviders {
    constructor(properties: AdditionalAuthenticationProviders);
}
export declare class UserPoolConfig {
    AppIdClientRegex?: Value<string>;
    UserPoolId?: Value<string>;
    AwsRegion?: Value<string>;
    DefaultAction?: Value<string>;
    constructor(properties: UserPoolConfig);
}
export declare class LogConfig {
    CloudWatchLogsRoleArn?: Value<string>;
    ExcludeVerboseContent?: Value<boolean>;
    FieldLogLevel?: Value<string>;
    constructor(properties: LogConfig);
}
export declare class OpenIDConnectConfig {
    Issuer?: Value<string>;
    ClientId?: Value<string>;
    AuthTTL?: Value<number>;
    IatTTL?: Value<number>;
    constructor(properties: OpenIDConnectConfig);
}
export declare class AdditionalAuthenticationProvider {
    OpenIDConnectConfig?: OpenIDConnectConfig;
    UserPoolConfig?: CognitoUserPoolConfig;
    AuthenticationType: Value<string>;
    constructor(properties: AdditionalAuthenticationProvider);
}
export declare class Tags {
    constructor(properties: Tags);
}
export declare class CognitoUserPoolConfig {
    AppIdClientRegex?: Value<string>;
    UserPoolId?: Value<string>;
    AwsRegion?: Value<string>;
    constructor(properties: CognitoUserPoolConfig);
}
export interface GraphQLApiProperties {
    OpenIDConnectConfig?: OpenIDConnectConfig;
    XrayEnabled?: Value<boolean>;
    UserPoolConfig?: UserPoolConfig;
    Tags?: Tags;
    Name: Value<string>;
    AuthenticationType: Value<string>;
    LogConfig?: LogConfig;
    AdditionalAuthenticationProviders?: AdditionalAuthenticationProviders;
}
export default class Inner_GraphQLApi extends ResourceBase<GraphQLApiProperties> {
    static AdditionalAuthenticationProviders: typeof AdditionalAuthenticationProviders;
    static UserPoolConfig: typeof UserPoolConfig;
    static LogConfig: typeof LogConfig;
    static OpenIDConnectConfig: typeof OpenIDConnectConfig;
    static AdditionalAuthenticationProvider: typeof AdditionalAuthenticationProvider;
    static Tags: typeof Tags;
    static CognitoUserPoolConfig: typeof CognitoUserPoolConfig;
    constructor(properties: GraphQLApiProperties);
}
