cdk-iam-floyd
Version:
AWS IAM policy statement generator with fluent interface for AWS CDK
202 lines (201 loc) • 8.5 kB
TypeScript
import { AccessLevelList } from '../../shared/access-level';
import { PolicyStatement } from '../../shared';
import { aws_iam as iam } from "aws-cdk-lib";
/**
* Statement provider for service [cognito-sync](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazoncognitosync.html).
*
* @param sid [SID](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_sid.html) of the statement
*/
export declare class CognitoSync extends PolicyStatement {
servicePrefix: string;
/**
* Grants permission to initiate a bulk publish of all existing datasets for an Identity Pool to the configured stream
*
* Access Level: Write
*
* https://docs.aws.amazon.com/cognitosync/latest/APIReference/API_BulkPublish.html
*/
toBulkPublish(): this;
/**
* Grants permission to delete a specific dataset
*
* Access Level: Write
*
* https://docs.aws.amazon.com/cognitosync/latest/APIReference/API_DeleteDataset.html
*/
toDeleteDataset(): this;
/**
* Grants permission to get metadata about a dataset by identity and dataset name
*
* Access Level: Read
*
* https://docs.aws.amazon.com/cognitosync/latest/APIReference/API_DescribeDataset.html
*/
toDescribeDataset(): this;
/**
* Grants permission to get usage details (for example, data storage) about a particular identity pool
*
* Access Level: Read
*
* https://docs.aws.amazon.com/cognitosync/latest/APIReference/API_DescribeIdentityPoolUsage.html
*/
toDescribeIdentityPoolUsage(): this;
/**
* Grants permission to get usage information for an identity, including number of datasets and data usage
*
* Access Level: Read
*
* https://docs.aws.amazon.com/cognitosync/latest/APIReference/API_DescribeIdentityUsage.html
*/
toDescribeIdentityUsage(): this;
/**
* Grants permission to get the status of the last BulkPublish operation for an identity pool
*
* Access Level: Read
*
* https://docs.aws.amazon.com/cognitosync/latest/APIReference/API_GetBulkPublishDetails.html
*/
toGetBulkPublishDetails(): this;
/**
* Grants permission to get the events and the corresponding Lambda functions associated with an identity pool
*
* Access Level: Read
*
* https://docs.aws.amazon.com/cognitosync/latest/APIReference/API_GetCognitoEvents.html
*/
toGetCognitoEvents(): this;
/**
* Grants permission to get the configuration settings of an identity pool
*
* Access Level: Read
*
* https://docs.aws.amazon.com/cognitosync/latest/APIReference/API_GetIdentityPoolConfiguration.html
*/
toGetIdentityPoolConfiguration(): this;
/**
* Grants permission to list datasets for an identity
*
* Access Level: List
*
* https://docs.aws.amazon.com/cognitosync/latest/APIReference/API_ListDatasets.html
*/
toListDatasets(): this;
/**
* Grants permission to get a list of identity pools registered with Cognito
*
* Access Level: Read
*
* https://docs.aws.amazon.com/cognitosync/latest/APIReference/API_ListIdentityPoolUsage.html
*/
toListIdentityPoolUsage(): this;
/**
* Grants permission to get paginated records, optionally changed after a particular sync count for a dataset and identity
*
* Access Level: Read
*
* https://docs.aws.amazon.com/cognitosync/latest/APIReference/API_ListRecords.html
*/
toListRecords(): this;
/**
* Grants permission to query records
*
* Access Level: Read
*/
toQueryRecords(): this;
/**
* Grants permission to register a device to receive push sync notifications
*
* Access Level: Write
*
* https://docs.aws.amazon.com/cognitosync/latest/APIReference/API_RegisterDevice.html
*/
toRegisterDevice(): this;
/**
* Grants permission to set the AWS Lambda function for a given event type for an identity pool
*
* Access Level: Write
*
* https://docs.aws.amazon.com/cognitosync/latest/APIReference/API_SetCognitoEvents.html
*/
toSetCognitoEvents(): this;
/**
* Grants permission to configure datasets
*
* Access Level: Write
*/
toSetDatasetConfiguration(): this;
/**
* Grants permission to set the necessary configuration for push sync
*
* Access Level: Write
*
* https://docs.aws.amazon.com/cognitosync/latest/APIReference/API_SetIdentityPoolConfiguration.html
*/
toSetIdentityPoolConfiguration(): this;
/**
* Grants permission to subscribe to receive notifications when a dataset is modified by another device
*
* Access Level: Write
*
* https://docs.aws.amazon.com/cognitosync/latest/APIReference/API_SubscribeToDataset.html
*/
toSubscribeToDataset(): this;
/**
* Grants permission to unsubscribe from receiving notifications when a dataset is modified by another device
*
* Access Level: Write
*
* https://docs.aws.amazon.com/cognitosync/latest/APIReference/API_UnsubscribeFromDataset.html
*/
toUnsubscribeFromDataset(): this;
/**
* Grants permission to post updates to records and add and delete records for a dataset and user
*
* Access Level: Write
*
* https://docs.aws.amazon.com/cognitosync/latest/APIReference/API_UpdateRecords.html
*/
toUpdateRecords(): this;
protected accessLevelList: AccessLevelList;
/**
* Adds a resource of type dataset to the statement
*
* https://docs.aws.amazon.com/cognito/latest/developerguide/synchronizing-data.html#understanding-datasets
*
* @param identityPoolId - Identifier for the identityPoolId.
* @param identityId - Identifier for the identityId.
* @param datasetName - Identifier for the datasetName.
* @param account - Account of the resource; defaults to `*`, unless using the CDK, where the default is the current Stack's account.
* @param region - Region of the resource; defaults to `*`, unless using the CDK, where the default is the current Stack's region.
* @param partition - Partition of the AWS account [aws, aws-cn, aws-us-gov]; defaults to `aws`, unless using the CDK, where the default is the current Stack's partition.
*/
onDataset(identityPoolId: string, identityId: string, datasetName: string, account?: string, region?: string, partition?: string): this;
/**
* Adds a resource of type identity to the statement
*
* https://docs.aws.amazon.com/cognito/latest/developerguide/identity-pools.html#authenticated-and-unauthenticated-identities
*
* @param identityPoolId - Identifier for the identityPoolId.
* @param identityId - Identifier for the identityId.
* @param account - Account of the resource; defaults to `*`, unless using the CDK, where the default is the current Stack's account.
* @param region - Region of the resource; defaults to `*`, unless using the CDK, where the default is the current Stack's region.
* @param partition - Partition of the AWS account [aws, aws-cn, aws-us-gov]; defaults to `aws`, unless using the CDK, where the default is the current Stack's partition.
*/
onIdentity(identityPoolId: string, identityId: string, account?: string, region?: string, partition?: string): this;
/**
* Adds a resource of type identitypool to the statement
*
* https://docs.aws.amazon.com/cognito/latest/developerguide/identity-pools.html
*
* @param identityPoolId - Identifier for the identityPoolId.
* @param account - Account of the resource; defaults to `*`, unless using the CDK, where the default is the current Stack's account.
* @param region - Region of the resource; defaults to `*`, unless using the CDK, where the default is the current Stack's region.
* @param partition - Partition of the AWS account [aws, aws-cn, aws-us-gov]; defaults to `aws`, unless using the CDK, where the default is the current Stack's partition.
*/
onIdentitypool(identityPoolId: string, account?: string, region?: string, partition?: string): this;
/**
* Statement provider for service [cognito-sync](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazoncognitosync.html).
*
*/
constructor(props?: iam.PolicyStatementProps);
}