# Functions
New creates a new deck with the given options.
WithCodes returns an option that sets the card codes of the deck.
WithComposition returns an option that sets the composition of the deck.
WithID returns an option that sets the id of the deck.
WithShuffled returns an option that sets the shuffled state of the deck.
# Variables
ErrNotEnoughCards is the error returned when there are not enough cards in the deck.
# Type aliases
Option is a function that can be used to modify a deck.