## API Report File for "graphql-auth-transformer" > Do not edit this file. It is a report generated by [API Extractor](https://api-extractor.com/). ```ts import { CompoundExpressionNode } from 'graphql-mapping-template'; import { default as default_2 } from 'cloudform-types/types/appSync/apiKey'; import { default as default_3 } from 'cloudform-types/types/appSync/resolver'; import { default as default_4 } from 'cloudform-types/types/appSync/dataSource'; import { DirectiveNode } from 'graphql'; import { Expression } from 'graphql-mapping-template'; import { FieldDefinitionNode } from 'graphql'; import GraphQLApi from 'cloudform-types/types/appSync/graphQlApi'; import { InterfaceTypeDefinitionNode } from 'graphql'; import ManagedPolicy from 'cloudform-types/types/iam/managedPolicy'; import { NumberParameter } from 'cloudform-types'; import { ObjectTypeDefinitionNode } from 'graphql'; import { StringParameter } from 'cloudform-types'; import Template from 'cloudform-types/types/template'; import { Transformer as Transformer_2 } from 'graphql-transformer-core'; import { TransformerContext } from 'graphql-transformer-core'; // @public (undocumented) export type ApiKeyConfig = { description?: string; apiKeyExpirationDays: number; apiKeyExpirationDate?: Date; }; // @public (undocumented) export type AppSyncAuthConfiguration = { defaultAuthentication: AppSyncAuthConfigurationEntry; additionalAuthenticationProviders: Array; }; // @public (undocumented) export type AppSyncAuthConfigurationEntry = { authenticationType: AppSyncAuthMode; apiKeyConfig?: ApiKeyConfig; userPoolConfig?: UserPoolConfig; openIDConnectConfig?: OpenIDConnectConfig; lambdaAuthorizerConfig?: LambdaAuthorizerConfig; }; // @public (undocumented) export type AppSyncAuthMode = 'API_KEY' | 'AMAZON_COGNITO_USER_POOLS' | 'AWS_IAM' | 'OPENID_CONNECT' | 'AWS_LAMBDA'; // @public (undocumented) export type ConfiguredAuthProviders = { default: AuthProvider; onlyDefaultAuthProviderConfigured: boolean; hasApiKey: boolean; hasUserPools: boolean; hasOIDC: boolean; hasIAM: boolean; }; // @public (undocumented) export type LambdaAuthorizerConfig = { lambdaFunction: string; ttlSeconds?: number; }; // @public (undocumented) export class ModelAuthTransformer extends Transformer_2 { constructor(config?: ModelAuthTransformerConfig); // (undocumented) after: (ctx: TransformerContext) => void; // (undocumented) authPolicyResources: Set; // (undocumented) before: (ctx: TransformerContext) => void; // (undocumented) config: ModelAuthTransformerConfig; // (undocumented) configuredAuthProviders: ConfiguredAuthProviders; // (undocumented) field: (parent: ObjectTypeDefinitionNode | InterfaceTypeDefinitionNode, definition: FieldDefinitionNode, directive: DirectiveNode, ctx: TransformerContext) => void; // (undocumented) generateIAMPolicyforAuthRole: boolean; // (undocumented) generateIAMPolicyforUnauthRole: boolean; // (undocumented) hasProviderAuthRules(rules: AuthRule[]): Boolean; // (undocumented) object: (def: ObjectTypeDefinitionNode, directive: DirectiveNode, ctx: TransformerContext) => void; // Warning: (ae-forgotten-export) The symbol "AuthRule" needs to be exported by the entry point index.d.ts // // (undocumented) protectSyncQuery(ctx: TransformerContext, def: ObjectTypeDefinitionNode, resolverResourceID: string, rules: AuthRule[]): void; // Warning: (ae-forgotten-export) The symbol "ResourceFactory" needs to be exported by the entry point index.d.ts // // (undocumented) resources: ResourceFactory; // (undocumented) unauthPolicyResources: Set; } // @public (undocumented) export type ModelAuthTransformerConfig = { authConfig?: AppSyncAuthConfiguration; addAwsIamAuthInOutputSchema?: boolean; }; // @public (undocumented) export type OpenIDConnectConfig = { name: string; issuerUrl: string; clientId?: string; iatTTL?: number; authTTL?: number; }; // @public (undocumented) export type UserPoolConfig = { userPoolId: string; }; // Warnings were encountered during analysis: // // src/ModelAuthTransformer.ts:149:3 - (ae-forgotten-export) The symbol "AuthProvider" needs to be exported by the entry point index.d.ts // (No @packageDocumentation comment for this package) ```