import { GetUserPoolMfaConfigResponse, UserPoolType, UserPoolClientType, GroupType, IdentityProviderType } from '@aws-sdk/client-cognito-identity-provider';
import { IdentityPool } from '@aws-sdk/client-cognito-identity';
import { FunctionConfiguration } from '@aws-sdk/client-lambda';
import { GraphqlApi } from '@aws-sdk/client-appsync';
import { TableDescription } from '@aws-sdk/client-dynamodb';
import { StackResourceSummary } from '@aws-sdk/client-cloudformation';
import { AwsClients } from './aws-clients';
export declare class AwsFetcher {
    private readonly clients;
    constructor(clients: AwsClients);
    fetchUserPool(userPoolId: string): Promise<UserPoolType>;
    fetchMfaConfig(userPoolId: string): Promise<GetUserPoolMfaConfigResponse>;
    fetchUserPoolClient(userPoolId: string, clientId: string): Promise<UserPoolClientType>;
    fetchIdentityProviders(userPoolId: string): Promise<IdentityProviderType[]>;
    fetchIdentityGroups(userPoolId: string): Promise<GroupType[]>;
    fetchIdentityPool(identityPoolId: string): Promise<IdentityPool>;
    fetchIdentityPoolRoles(identityPoolId: string): Promise<{
        authenticated?: string;
        unauthenticated?: string;
    } | undefined>;
    fetchGroupsByUserPoolId(userPoolId: string): Promise<Record<string, string> | undefined>;
    fetchFunctionConfig(deployedName: string): Promise<FunctionConfiguration | undefined>;
    fetchFunctionSchedule(deployedName: string): Promise<string | undefined>;
    fetchBucketNotifications(bucketName: string): Promise<import("@aws-sdk/client-s3").GetBucketNotificationConfigurationCommandOutput>;
    fetchBucketAccelerate(bucketName: string): Promise<import("@aws-sdk/client-s3").BucketAccelerateStatus | undefined>;
    fetchBucketVersioning(bucketName: string): Promise<import("@aws-sdk/client-s3").BucketVersioningStatus | undefined>;
    fetchBucketEncryption(bucketName: string): Promise<import("@aws-sdk/client-s3").ServerSideEncryptionConfiguration | undefined>;
    fetchGraphqlApi(apiId: string): Promise<GraphqlApi | undefined>;
    fetchTableDescription(tableName: string): Promise<TableDescription | undefined>;
    fetchAppBuildSpec(appId: string): Promise<string | undefined>;
    fetchRestApiRootResourceId(restApiId: string): Promise<string>;
    listNestedStacks(stackName: string): Promise<StackResourceSummary[]>;
    listStackResources(stackName: string): Promise<StackResourceSummary[]>;
    findResourcePhysicalId(stackName: string, logicalResourceId: string): Promise<string | undefined>;
}
//# sourceMappingURL=aws-fetcher.d.ts.map