Using a negative binomial probability model means you want to model a response that is a natural number Y = 0, 1, 2, ... Such a response is typically a count value of something ("number of events or objects that are observed during a given interval in space or time").
The aim of the regression model is to find the coefficients (bi) of a predictor function depending on the values of some predictor variables (Xi) that will predict the expectation for any given combination of values of the predictors:
E(Y) = b0 + b1X1 + b2X2 + ... = eta(b|X)
The predictor variables in this model are always treated as real-valued. Categorical predictors may be used after numerically coding their values as a set if indicator variables (a categorical predictor with k levels will end up as k-1 numerically coded indicator variables in the model function).
When Y is a count variable and modelled by a negBin distribution, the expected value must be non-negative. However, the function eta can well return negative values, but this should actually be impossible. To enforce that the prediction can never become negative (no matter what values the Xi take), some appropriate transformation g(.) can be applied to eta. For g=exp, for instance, the result can not be negative anymore:
E(Y) = exp(eta(b|X))
The inverse function of g(.) is called the "link-funktion", linking the predictions function eta to the response values:
log(E(Y)) = eta(b|X)
So wie say this is a negBin model with log-link, what means: Y~negBin and log(E(Y)) = eta(b|X).
This all does not affect the predictors. They only need to be numeric, so they can take the values of numeric variables, transformed values of numeric variables, or indicator values for categories of categorical variables. This applies for all probability models and all link functions (hence, for all GLMs)