def add_resource_permissions(ResourceId=None, Principals=None):
    """
    Creates a set of permissions for the specified folder or document. The resource permissions are overwritten if the principals already have different permissions.
    See also: AWS API Documentation
    
    
    :example: response = client.add_resource_permissions(
        ResourceId='string',
        Principals=[
            {
                'Id': 'string',
                'Type': 'USER'|'GROUP'|'INVITE'|'ANONYMOUS'|'ORGANIZATION',
                'Role': 'VIEWER'|'CONTRIBUTOR'|'OWNER'|'COOWNER'
            },
        ]
    )
    
    
    :type ResourceId: string
    :param ResourceId: [REQUIRED]
            The ID of the resource.
            

    :type Principals: list
    :param Principals: [REQUIRED]
            The users, groups, or organization being granted permission.
            (dict) --Describes the recipient type and ID, if available.
            Id (string) -- [REQUIRED]The ID of the recipient.
            Type (string) -- [REQUIRED]The type of the recipient.
            Role (string) -- [REQUIRED]The role of the recipient.
            
            

    :rtype: dict
    :return: {
        'ShareResults': [
            {
                'PrincipalId': 'string',
                'Role': 'VIEWER'|'CONTRIBUTOR'|'OWNER'|'COOWNER',
                'Status': 'SUCCESS'|'FAILURE',
                'ShareId': 'string',
                'StatusMessage': 'string'
            },
        ]
    }
    
    
    """
    pass
