# Functions
BeginTransaction will wrap the passed DB into a transaction handler that supports it being used with less care and prevents having to check if we are already in a tx and failures due to eager committers.
EscapeArgs return the query and args with the argument placeholder escaped.
# Structs
FlexibleTransaction allows for a DB transaction to be passed through functions and avoid multiple commit/rollbacks it also takes care of some of the most repeated checks at the time of commit/rollback and tx checking.
Information contains all required information to create a connection into a db.
# Interfaces
DatabaseHandler represents the boundary with a db.
DB represents an active database connection.
# Type aliases
LogLevel is the type for the potential log levels a db can have.
ResultFetch represents a closure that receives a receiver struct and wil assign all the results it is expected that it receives a slice.
ResultFetchIter represents a closure that receives a receiver struct that will get the results assigned for one row and returns a tuple of `next item present`, `close function`, error.
TXFinishFunc represents an all-encompassing function that either rolls or commits a tx based on the outcome.