import { ResourceBase } from '../resource' ; import { Value , List } from '../dataTypes' ; export class CognitoStreams { StreamingStatus ? : Value < string > ; StreamName ? : Value < string > ; RoleArn ? : Value < string > ; constructor ( properties ) { Object . assign ( this , properties ) ; } } export class PushSync { ApplicationArns ? : List < Value < string > > ; RoleArn ? : Value < string > ; constructor ( properties ) { Object . assign ( this , properties ) ; } } export class CognitoIdentityProvider { ServerSideTokenCheck ? : Value < boolean > ; ProviderName ? : Value < string > ; ClientId ? : Value < string > ; constructor ( properties ) { Object . assign ( this , properties ) ; } } export interface IdentityPoolProperties { PushSync ? : PushSync ; CognitoIdentityProviders ? : List < CognitoIdentityProvider > ; CognitoEvents ? : { [ key ] : any ; } ; DeveloperProviderName ? : Value < string > ; CognitoStreams ? : CognitoStreams ; IdentityPoolName ? : Value < string > ; AllowUnauthenticatedIdentities : Value < boolean > ; SupportedLoginProviders ? : { [ key ] : any ; } ; SamlProviderARNs ? : List < Value < string > > ; OpenIdConnectProviderARNs ? : List < Value < string > > ; AllowClassicFlow ? : Value < boolean > ; } export default class IdentityPool extends ResourceBase < IdentityPoolProperties > { static CognitoStreams = CognitoStreams ; static PushSync = PushSync ; static CognitoIdentityProvider = CognitoIdentityProvider ; constructor ( properties ) { super ( 'AWS::Cognito::IdentityPool' , properties ) ; } }