# Path: memsql_loader/api/shared.py
# class SortDirection(SuperEnum):
#     DESC = SuperEnum.E
#     ASC = SuperEnum.E
# 
# Path: memsql_loader/util/super_json.py
# def simplejson_datetime_serializer(obj):
# def _set_defaults(kwargs):
# def dumps(data, **kwargs):
# def loads(data, **kwargs):
# def safe_loads(data, default, **kwargs):
# def pformat(d):


from prettytable import PrettyTable
from clark.super_enum import SuperEnum
from memsql_loader.api.shared import SortDirection
from memsql_loader.util import super_json as json


class TableFormat(SuperEnum):
    HTML = SuperEnum.E
    JSON = SuperEnum.E
    TABLE = SuperEnum.E

# Wrapper around PrettyTable and json.dump
class PrettyPrinter(object):
    # Assumes that the format of the data is a list of dictionaries
    # similar to AttrDict's

# Path: memsql_loader/api/shared.py
# class SortDirection(SuperEnum):
#     DESC = SuperEnum.E
#     ASC = SuperEnum.E
# 
# Path: memsql_loader/util/super_json.py
# def simplejson_datetime_serializer(obj):
# def _set_defaults(kwargs):
# def dumps(data, **kwargs):
# def loads(data, **kwargs):
# def safe_loads(data, default, **kwargs):
# def pformat(d):


# Path: memsql_loader/util/pretty_printer.py
from prettytable import PrettyTable
from clark.super_enum import SuperEnum
from memsql_loader.api.shared import SortDirection
from memsql_loader.util import super_json as json



class TableFormat(SuperEnum):
    HTML = SuperEnum.E
    JSON = SuperEnum.E
    TABLE = SuperEnum.E

# Wrapper around PrettyTable and json.dump
class PrettyPrinter(object):
    # Assumes that the format of the data is a list of dictionaries
    # similar to AttrDict's

    def __init__(self, data, columns=None, align={}, sort_by=None, sort_dir=SortDirection.DESC, format=TableFormat.TABLE):