# Generated by roxygen2: do not edit by hand

export("%>%")
export(as_tibble)
export(bind_cols)
export(complete)
export(expand_grid)
export(getAccessToken)
export(getVisitsSummary)
export(group_by)
export(mutate)
export(n)
export(persistAccessToken)
export(select)
export(summarise)
export(year)
import(httr)
import(keyring)
import(tibble)
importFrom(dplyr,bind_cols)
importFrom(dplyr,bind_rows)
importFrom(dplyr,group_by)
importFrom(dplyr,mutate)
importFrom(dplyr,n)
importFrom(dplyr,rowwise)
importFrom(dplyr,select)
importFrom(dplyr,summarise)
importFrom(jsonlite,fromJSON)
importFrom(lubridate,year)
importFrom(magrittr,"%>%")
importFrom(tibble,as_tibble)
importFrom(tibble,rownames_to_column)
importFrom(tidyr,complete)
importFrom(tidyr,expand_grid)
importFrom(utils,head)
importFrom(utils,tail)
