import { ResourceBase, ResourceTag } from '../resource'; import { Value, List } from '../dataTypes'; export declare class AdditionalAuthenticationProvider { OpenIDConnectConfig?: OpenIDConnectConfig; LambdaAuthorizerConfig?: LambdaAuthorizerConfig; UserPoolConfig?: CognitoUserPoolConfig; AuthenticationType: Value; constructor(properties: AdditionalAuthenticationProvider); } export declare class CognitoUserPoolConfig { AppIdClientRegex?: Value; UserPoolId?: Value; AwsRegion?: Value; constructor(properties: CognitoUserPoolConfig); } export declare class LambdaAuthorizerConfig { IdentityValidationExpression?: Value; AuthorizerUri?: Value; AuthorizerResultTtlInSeconds?: Value; constructor(properties: LambdaAuthorizerConfig); } export declare class LogConfig { CloudWatchLogsRoleArn?: Value; ExcludeVerboseContent?: Value; FieldLogLevel?: Value; constructor(properties: LogConfig); } export declare class OpenIDConnectConfig { Issuer?: Value; ClientId?: Value; AuthTTL?: Value; IatTTL?: Value; constructor(properties: OpenIDConnectConfig); } export declare class UserPoolConfig { AppIdClientRegex?: Value; UserPoolId?: Value; AwsRegion?: Value; DefaultAction?: Value; constructor(properties: UserPoolConfig); } export interface GraphQLApiProperties { OpenIDConnectConfig?: OpenIDConnectConfig; MergedApiExecutionRoleArn?: Value; OwnerContact?: Value; Name: Value; AdditionalAuthenticationProviders?: List; ApiType?: Value; LambdaAuthorizerConfig?: LambdaAuthorizerConfig; XrayEnabled?: Value; Visibility?: Value; UserPoolConfig?: UserPoolConfig; Tags?: List; AuthenticationType: Value; LogConfig?: LogConfig; } export default class GraphQLApi extends ResourceBase { static AdditionalAuthenticationProvider: typeof AdditionalAuthenticationProvider; static CognitoUserPoolConfig: typeof CognitoUserPoolConfig; static LambdaAuthorizerConfig: typeof LambdaAuthorizerConfig; static LogConfig: typeof LogConfig; static OpenIDConnectConfig: typeof OpenIDConnectConfig; static UserPoolConfig: typeof UserPoolConfig; constructor(properties: GraphQLApiProperties); }