import { AccessLevelList } from '../../shared/access-level';
import { PolicyStatement } from '../../shared';
import { aws_iam as iam } from "aws-cdk-lib";
/**
 * Statement provider for service [user-subscriptions](https://docs.aws.amazon.com/service-authorization/latest/reference/list_user-subscriptions.html).
 *
 * @param sid [SID](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_sid.html) of the statement
 */
export declare class UserSubscriptions extends PolicyStatement {
    servicePrefix: string;
    /**
     * Grants permission to create a User subscription Claim
     *
     * Access Level: Write
     *
     * Possible conditions:
     * - .ifCreateForSelf()
     *
     * https://docs.aws.amazon.com/amazonq/latest/qdeveloper-ug/security_iam_permissions.html
     */
    toCreateClaim(): this;
    /**
     * Grants permission to create a User subscription Claim add-on
     *
     * Access Level: Write
     *
     * https://docs.aws.amazon.com/amazonq/latest/qdeveloper-ug/security_iam_permissions.html
     */
    toCreateClaimAddOn(): this;
    /**
     * Grants permission to delete a User subscription auto-top-up rule
     *
     * Access Level: Write
     *
     * https://docs.aws.amazon.com/amazonq/latest/qdeveloper-ug/security_iam_permissions.html
     */
    toDeleteAutoTopUpRule(): this;
    /**
     * Grants permission to delete a User subscription Claim
     *
     * Access Level: Write
     *
     * https://docs.aws.amazon.com/amazonq/latest/qdeveloper-ug/security_iam_permissions.html
     */
    toDeleteClaim(): this;
    /**
     * Grants permission to get a User subscription auto-top-up rule
     *
     * Access Level: Read
     *
     * https://docs.aws.amazon.com/amazonq/latest/qdeveloper-ug/security_iam_permissions.html
     */
    toGetAutoTopUpRule(): this;
    /**
     * Grants permission to get a User subscription effective usage limit
     *
     * Access Level: Read
     *
     * https://docs.aws.amazon.com/amazonq/latest/qdeveloper-ug/security_iam_permissions.html
     */
    toGetEffectiveUsageLimit(): this;
    /**
     * Grants permission to get User subscription usage limit history
     *
     * Access Level: Read
     *
     * https://docs.aws.amazon.com/amazonq/latest/qdeveloper-ug/security_iam_permissions.html
     */
    toGetUsageLimitHistory(): this;
    /**
     * Grants permission to list all User subscription Claims for Application
     *
     * Access Level: List
     *
     * https://docs.aws.amazon.com/amazonq/latest/qdeveloper-ug/security_iam_permissions.html
     */
    toListApplicationClaims(): this;
    /**
     * Grants permission to list all User subscription Claim add-ons
     *
     * Access Level: List
     *
     * https://docs.aws.amazon.com/amazonq/latest/qdeveloper-ug/security_iam_permissions.html
     */
    toListClaimAddOns(): this;
    /**
     * Grants permission to list all User subscription Claims
     *
     * Access Level: List
     *
     * https://docs.aws.amazon.com/amazonq/latest/qdeveloper-ug/security_iam_permissions.html
     */
    toListClaims(): this;
    /**
     * Grants permission to list all User subscription entitlements
     *
     * Access Level: List
     *
     * https://docs.aws.amazon.com/amazonq/latest/qdeveloper-ug/security_iam_permissions.html
     */
    toListEntitlements(): this;
    /**
     * Grants permission to list all User subscription usage limits
     *
     * Access Level: List
     *
     * https://docs.aws.amazon.com/amazonq/latest/qdeveloper-ug/security_iam_permissions.html
     */
    toListUsageLimits(): this;
    /**
     * Grants permission to list all User subscriptions
     *
     * Access Level: List
     *
     * https://docs.aws.amazon.com/amazonq/latest/qdeveloper-ug/security_iam_permissions.html
     */
    toListUserSubscriptions(): this;
    /**
     * Grants permission to set a User subscription auto-top-up rule
     *
     * Access Level: Write
     *
     * https://docs.aws.amazon.com/amazonq/latest/qdeveloper-ug/security_iam_permissions.html
     */
    toSetAutoTopUpRule(): this;
    /**
     * Grants permission to set a User subscription overage configuration
     *
     * Access Level: Write
     *
     * https://docs.aws.amazon.com/amazonq/latest/qdeveloper-ug/security_iam_permissions.html
     */
    toSetOverageConfig(): this;
    /**
     * Grants permission to set a User subscription usage limit
     *
     * Access Level: Write
     *
     * https://docs.aws.amazon.com/amazonq/latest/qdeveloper-ug/security_iam_permissions.html
     */
    toSetUsageLimit(): this;
    /**
     * Grants permission to update a User subscription Claim
     *
     * Access Level: Write
     *
     * https://docs.aws.amazon.com/amazonq/latest/qdeveloper-ug/security_iam_permissions.html
     */
    toUpdateClaim(): this;
    protected accessLevelList: AccessLevelList;
    /**
     * Filters access by only allowing creation of User subscription Claims for the caller
     *
     * https://docs.aws.amazon.com/amazonq/latest/qdeveloper-ug/security-iam-service-with-iam.html#security_iam_service-with-iam-id-based-policies-conditionkeys
     *
     * Applies to actions:
     * - .toCreateClaim()
     *
     * @param value `true` or `false`. **Default:** `true`
     */
    ifCreateForSelf(value?: boolean): this;
    /**
     * Statement provider for service [user-subscriptions](https://docs.aws.amazon.com/service-authorization/latest/reference/list_user-subscriptions.html).
     *
     */
    constructor(props?: iam.PolicyStatementProps);
}
