Public repos are visible to anyone who has a GitHub account.
Private repos are are only accessible to logged in collaborators of that repo. Anyone who is not a collaborator will not be able to view it.
Repositories that are public will show as public when a board is created for that repo in Waffle. If your repo is private in GitHub, the board you create for that repo would also be private (and accessible only to logged in collaborators) via Waffle.
There are some cool things you can do if you want some repos public and others private.
For instance, if you check out our board at https://waffle.io/waffleio/waffle.io, you'll notice you can see any of the issues for our 'waffle.io' repository, as well as a few others, like 'takeout', that are public repositories. We also have many private repositories connected to that board as well, all of which are only visible to collaborators of the project.
Some open source projects also take this approach where the primary, public repository is a catch all for user requests and public facing roadmap information, and the private repositories added as sources (in Settings->Repositories) for that board are reserved for collaborators only.