import { APIConfig, GraphQLProviderConfig, LibraryAPIOptions } from './API/types'; import { AnalyticsConfig } from './Analytics/types'; import { AuthConfig, AuthIdentityPoolConfig, AuthUserPoolAndIdentityPoolConfig, AuthUserPoolConfig, CognitoIdentityPoolConfig, GetCredentialsOptions, LibraryAuthOptions } from './Auth/types'; import { GeoConfig } from './Geo/types'; import { PredictionsConfig } from './Predictions/types'; import { LibraryStorageOptions, StorageAccessLevel, StorageConfig } from './Storage/types'; import { NotificationsConfig } from './Notifications/types'; import { InteractionsConfig } from './Interactions/types'; /** * Compatibility type representing the Amplify Gen 1 configuration file schema. This type should not be used directly. */ export interface LegacyConfig { /** * @deprecated The field should not be used. */ aws_project_region?: string; } export type AtLeastOne; }> = Partial & U[keyof U]; /** * Amplify library configuration type. Used to specify back-end resource configuration across the library. */ export interface ResourcesConfig { API?: APIConfig; Analytics?: AnalyticsConfig; Auth?: AuthConfig; Interactions?: InteractionsConfig; Notifications?: NotificationsConfig; Predictions?: PredictionsConfig; Storage?: StorageConfig; Geo?: GeoConfig; } /** * Amplify library options type. Used to customize library behavior. */ export interface LibraryOptions { API?: LibraryAPIOptions; Auth?: LibraryAuthOptions; Storage?: LibraryStorageOptions; ssr?: boolean; } export { APIConfig, AuthConfig, AuthUserPoolConfig, AuthIdentityPoolConfig, AuthUserPoolAndIdentityPoolConfig, GetCredentialsOptions, GraphQLProviderConfig, InteractionsConfig, PredictionsConfig, StorageAccessLevel, StorageConfig, AnalyticsConfig, CognitoIdentityPoolConfig, GeoConfig, };