# Generated by roxygen2: do not edit by hand

export("%>%")
export(as_tibble)
export(bind_cols)
export(complete)
export(expand_grid)
export(getAccessToken)
export(getUserCountry)
export(getVisitsSummary)
export(group_by)
export(matomoQuery)
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(stringr,str_replace)
importFrom(stringr,str_replace_all)
importFrom(tibble,as_tibble)
importFrom(tibble,rownames_to_column)
importFrom(tidyr,complete)
importFrom(tidyr,expand_grid)
importFrom(utils,head)
importFrom(utils,tail)
