':calls: `GET /repos/:owner/:repo/milestones <http://developer.github.com/v3/issues/milestones>`_
:param state: string
:param sort: string
:param direction: string
:rtype: :class:`github.PaginatedList.PaginatedList` of :class:`github.Milestone.Milestone`'

def get_milestones(self, state=github.GithubObject.NotSet, sort=github.GithubObject.NotSet, direction=github.GithubObject.NotSet):

    assert ((state is github.GithubObject.NotSet) or isinstance(state, (str, unicode))), state
    assert ((sort is github.GithubObject.NotSet) or isinstance(sort, (str, unicode))), sort
    assert ((direction is github.GithubObject.NotSet) or isinstance(direction, (str, unicode))), direction
    url_parameters = dict()
    if (state is not github.GithubObject.NotSet):
        url_parameters['state'] = state
    if (sort is not github.GithubObject.NotSet):
        url_parameters['sort'] = sort
    if (direction is not github.GithubObject.NotSet):
        url_parameters['direction'] = direction
    return github.PaginatedList.PaginatedList(github.Milestone.Milestone, self._requester, (self.url + '/milestones'), url_parameters)
