Contrary to popular belief, Flarum does support both private discussions and posts on the extension level. Only a limited number of extensions are actually implementing logic that interacts with it if you think of it, the only one I know of is byobu, it was originally built to integrate natively with the regular discussion index. Other extensions seem to do similar things like tags or flags, but they actually only mutate visibility.
Byobu is directly affecting the is_private column on the discussions table. This is done (hopefully) using the extender ModelPrivate. Given the posts table also has this column and that the extender supports multiple classes to affect, shows that Flarum can handle private/public permissions on a Post level too.
However, no extension that I know of actually does this, probably because access is usually granted on a discussion level, not a post level. Discussions would likely feel disrupted when certain posts would get hidden.