We can't make the expandable constructor private since we use it in the stripe module to initiate the appropriate types.