package handler import ( "apskel-pos-be/internal/appcontext" "apskel-pos-be/internal/contract" "context" "github.com/google/uuid" ) type TableService interface { CreateTable(ctx context.Context, apctx *appcontext.ContextInfo, req *contract.CreateTableRequest) *contract.Response UpdateTable(ctx context.Context, id uuid.UUID, req *contract.UpdateTableRequest) *contract.Response DeleteTable(ctx context.Context, id uuid.UUID) *contract.Response GetTableByID(ctx context.Context, id uuid.UUID) *contract.Response ListTables(ctx context.Context, req *contract.ListTablesQuery) *contract.Response OccupyTable(ctx context.Context, tableID uuid.UUID, req *contract.OccupyTableRequest) *contract.Response ReleaseTable(ctx context.Context, tableID uuid.UUID, req *contract.ReleaseTableRequest) *contract.Response GetAvailableTables(ctx context.Context, outletID uuid.UUID) *contract.Response GetOccupiedTables(ctx context.Context, outletID uuid.UUID) *contract.Response }