package ports

type QueryByWhereAndOrderByRequest struct {
	DatabaseID            string
	TablePrefixWithSchema string
	Version               string
	Select                string
	Where                 []ColumnCompare
	OrderBy               []string
	PageNo                int32
	PageSize              int32
}

type CommonQueryRequest struct {
	DatabaseID            string
	TablePrefixWithSchema string
	Version               string
	Select                string
	Where                 []ColumnCompare
	OrderBy               []string
	Or                    []ColumnCompare
	GroupBy               []string
	Join                  string
	Having                []ColumnCompare
	PageNo                int32
	PageSize              int32
}

type QueryByKeysRequest struct {
	DatabaseID            string
	TablePrefixWithSchema string
	Version               string
	Select                string
	KeyValues             map[string]string
}

type CountWhereRequest struct {
	DatabaseID            string
	TablePrefixWithSchema string
	Version               string
	Where                 []ColumnCompare
}

type CommonCountRequest struct {
	DatabaseID            string
	TablePrefixWithSchema string
	Version               string
	Where                 []ColumnCompare
	Or                    []ColumnCompare
	GroupBy               []string
	Join                  string
	Having                []ColumnCompare
}