import * as appmesh from "./appmesh.generated";
import * as iam from "../../aws-iam";
import * as cdk from "../../core/lib";
/**
 * Collection of grant methods for a IVirtualGatewayRef
 */
export declare class VirtualGatewayGrants {
    /**
     * Creates grants for VirtualGatewayGrants
     */
    static fromVirtualGateway(resource: appmesh.IVirtualGatewayRef): VirtualGatewayGrants;
    protected readonly resource: appmesh.IVirtualGatewayRef;
    private constructor();
    /**
     * Grant the given identity custom permissions
     */
    actions(grantee: iam.IGrantable, actions: Array<string>, options?: cdk.PermissionsOptions): iam.Grant;
    /**
     * Grants the given entity `appmesh:StreamAggregatedResources`.
     */
    streamAggregatedResources(grantee: iam.IGrantable): iam.Grant;
}
/**
 * Collection of grant methods for a IVirtualNodeRef
 */
export declare class VirtualNodeGrants {
    /**
     * Creates grants for VirtualNodeGrants
     */
    static fromVirtualNode(resource: appmesh.IVirtualNodeRef): VirtualNodeGrants;
    protected readonly resource: appmesh.IVirtualNodeRef;
    private constructor();
    /**
     * Grant the given identity custom permissions
     */
    actions(grantee: iam.IGrantable, actions: Array<string>, options?: cdk.PermissionsOptions): iam.Grant;
    /**
     * Grants streamAggregatedResources permissions
     */
    streamAggregatedResources(grantee: iam.IGrantable): iam.Grant;
}
