SPB Git forge

spb/toveli

Public
14commits 1branches 0releases
1.1 MBsize
maindefault branch
2 h agolast push
TypeScript 50.6% JavaScript 46.1% SQL 2.1% Shell 0.6% CSS 0.5%
60.6 KB · 2,377 lines json
Raw Blame History
1{2  "id": "b60423f1-a506-4cde-9fb2-100a0462ff66",3  "prevId": "00000000-0000-0000-0000-000000000000",4  "version": "7",5  "dialect": "postgresql",6  "tables": {7    "public.audit_events": {8      "name": "audit_events",9      "schema": "",10      "columns": {11        "id": {12          "name": "id",13          "type": "bigserial",14          "primaryKey": true,15          "notNull": true16        },17        "actor_id": {18          "name": "actor_id",19          "type": "uuid",20          "primaryKey": false,21          "notNull": false22        },23        "action": {24          "name": "action",25          "type": "text",26          "primaryKey": false,27          "notNull": true28        },29        "object_type": {30          "name": "object_type",31          "type": "text",32          "primaryKey": false,33          "notNull": false34        },35        "object_id": {36          "name": "object_id",37          "type": "text",38          "primaryKey": false,39          "notNull": false40        },41        "ip_hash": {42          "name": "ip_hash",43          "type": "text",44          "primaryKey": false,45          "notNull": false46        },47        "metadata_redacted": {48          "name": "metadata_redacted",49          "type": "jsonb",50          "primaryKey": false,51          "notNull": true,52          "default": "'{}'::jsonb"53        },54        "created_at": {55          "name": "created_at",56          "type": "timestamp with time zone",57          "primaryKey": false,58          "notNull": true,59          "default": "now()"60        }61      },62      "indexes": {63        "audit_created_idx": {64          "name": "audit_created_idx",65          "columns": [66            {67              "expression": "created_at",68              "isExpression": false,69              "asc": true,70              "nulls": "last"71            }72          ],73          "isUnique": false,74          "concurrently": false,75          "method": "btree",76          "with": {}77        },78        "audit_actor_idx": {79          "name": "audit_actor_idx",80          "columns": [81            {82              "expression": "actor_id",83              "isExpression": false,84              "asc": true,85              "nulls": "last"86            }87          ],88          "isUnique": false,89          "concurrently": false,90          "method": "btree",91          "with": {}92        }93      },94      "foreignKeys": {},95      "compositePrimaryKeys": {},96      "uniqueConstraints": {},97      "policies": {},98      "checkConstraints": {},99      "isRLSEnabled": false100    },101    "public.email_deliveries": {102      "name": "email_deliveries",103      "schema": "",104      "columns": {105        "id": {106          "name": "id",107          "type": "uuid",108          "primaryKey": true,109          "notNull": true,110          "default": "gen_random_uuid()"111        },112        "to_hash": {113          "name": "to_hash",114          "type": "text",115          "primaryKey": false,116          "notNull": true117        },118        "template": {119          "name": "template",120          "type": "text",121          "primaryKey": false,122          "notNull": true123        },124        "provider_id": {125          "name": "provider_id",126          "type": "text",127          "primaryKey": false,128          "notNull": false129        },130        "status": {131          "name": "status",132          "type": "text",133          "primaryKey": false,134          "notNull": true135        },136        "error": {137          "name": "error",138          "type": "text",139          "primaryKey": false,140          "notNull": false141        },142        "created_at": {143          "name": "created_at",144          "type": "timestamp with time zone",145          "primaryKey": false,146          "notNull": true,147          "default": "now()"148        }149      },150      "indexes": {151        "email_deliveries_created_idx": {152          "name": "email_deliveries_created_idx",153          "columns": [154            {155              "expression": "created_at",156              "isExpression": false,157              "asc": true,158              "nulls": "last"159            }160          ],161          "isUnique": false,162          "concurrently": false,163          "method": "btree",164          "with": {}165        }166      },167      "foreignKeys": {},168      "compositePrimaryKeys": {},169      "uniqueConstraints": {},170      "policies": {},171      "checkConstraints": {},172      "isRLSEnabled": false173    },174    "public.favorites": {175      "name": "favorites",176      "schema": "",177      "columns": {178        "user_id": {179          "name": "user_id",180          "type": "uuid",181          "primaryKey": false,182          "notNull": true183        },184        "listing_uid": {185          "name": "listing_uid",186          "type": "text",187          "primaryKey": false,188          "notNull": true189        },190        "created_at": {191          "name": "created_at",192          "type": "timestamp with time zone",193          "primaryKey": false,194          "notNull": true,195          "default": "now()"196        }197      },198      "indexes": {},199      "foreignKeys": {200        "favorites_user_id_users_id_fk": {201          "name": "favorites_user_id_users_id_fk",202          "tableFrom": "favorites",203          "tableTo": "users",204          "columnsFrom": [205            "user_id"206          ],207          "columnsTo": [208            "id"209          ],210          "onDelete": "cascade",211          "onUpdate": "no action"212        }213      },214      "compositePrimaryKeys": {215        "favorites_user_id_listing_uid_pk": {216          "name": "favorites_user_id_listing_uid_pk",217          "columns": [218            "user_id",219            "listing_uid"220          ]221        }222      },223      "uniqueConstraints": {},224      "policies": {},225      "checkConstraints": {},226      "isRLSEnabled": false227    },228    "public.inquiries": {229      "name": "inquiries",230      "schema": "",231      "columns": {232        "id": {233          "name": "id",234          "type": "uuid",235          "primaryKey": true,236          "notNull": true,237          "default": "gen_random_uuid()"238        },239        "listing_id": {240          "name": "listing_id",241          "type": "uuid",242          "primaryKey": false,243          "notNull": true244        },245        "sender_user_id": {246          "name": "sender_user_id",247          "type": "uuid",248          "primaryKey": false,249          "notNull": true250        },251        "recipient_user_id": {252          "name": "recipient_user_id",253          "type": "uuid",254          "primaryKey": false,255          "notNull": true256        },257        "category": {258          "name": "category",259          "type": "text",260          "primaryKey": false,261          "notNull": true,262          "default": "'INFO'"263        },264        "status": {265          "name": "status",266          "type": "text",267          "primaryKey": false,268          "notNull": true,269          "default": "'OPEN'"270        },271        "last_message_at": {272          "name": "last_message_at",273          "type": "timestamp with time zone",274          "primaryKey": false,275          "notNull": true,276          "default": "now()"277        },278        "created_at": {279          "name": "created_at",280          "type": "timestamp with time zone",281          "primaryKey": false,282          "notNull": true,283          "default": "now()"284        }285      },286      "indexes": {287        "inquiries_listing_idx": {288          "name": "inquiries_listing_idx",289          "columns": [290            {291              "expression": "listing_id",292              "isExpression": false,293              "asc": true,294              "nulls": "last"295            }296          ],297          "isUnique": false,298          "concurrently": false,299          "method": "btree",300          "with": {}301        },302        "inquiries_sender_idx": {303          "name": "inquiries_sender_idx",304          "columns": [305            {306              "expression": "sender_user_id",307              "isExpression": false,308              "asc": true,309              "nulls": "last"310            }311          ],312          "isUnique": false,313          "concurrently": false,314          "method": "btree",315          "with": {}316        },317        "inquiries_recipient_idx": {318          "name": "inquiries_recipient_idx",319          "columns": [320            {321              "expression": "recipient_user_id",322              "isExpression": false,323              "asc": true,324              "nulls": "last"325            }326          ],327          "isUnique": false,328          "concurrently": false,329          "method": "btree",330          "with": {}331        },332        "inquiries_unique_thread": {333          "name": "inquiries_unique_thread",334          "columns": [335            {336              "expression": "listing_id",337              "isExpression": false,338              "asc": true,339              "nulls": "last"340            },341            {342              "expression": "sender_user_id",343              "isExpression": false,344              "asc": true,345              "nulls": "last"346            }347          ],348          "isUnique": true,349          "concurrently": false,350          "method": "btree",351          "with": {}352        }353      },354      "foreignKeys": {355        "inquiries_listing_id_listings_id_fk": {356          "name": "inquiries_listing_id_listings_id_fk",357          "tableFrom": "inquiries",358          "tableTo": "listings",359          "columnsFrom": [360            "listing_id"361          ],362          "columnsTo": [363            "id"364          ],365          "onDelete": "cascade",366          "onUpdate": "no action"367        },368        "inquiries_sender_user_id_users_id_fk": {369          "name": "inquiries_sender_user_id_users_id_fk",370          "tableFrom": "inquiries",371          "tableTo": "users",372          "columnsFrom": [373            "sender_user_id"374          ],375          "columnsTo": [376            "id"377          ],378          "onDelete": "cascade",379          "onUpdate": "no action"380        },381        "inquiries_recipient_user_id_users_id_fk": {382          "name": "inquiries_recipient_user_id_users_id_fk",383          "tableFrom": "inquiries",384          "tableTo": "users",385          "columnsFrom": [386            "recipient_user_id"387          ],388          "columnsTo": [389            "id"390          ],391          "onDelete": "cascade",392          "onUpdate": "no action"393        }394      },395      "compositePrimaryKeys": {},396      "uniqueConstraints": {},397      "policies": {},398      "checkConstraints": {},399      "isRLSEnabled": false400    },401    "public.listing_claims": {402      "name": "listing_claims",403      "schema": "",404      "columns": {405        "id": {406          "name": "id",407          "type": "uuid",408          "primaryKey": true,409          "notNull": true,410          "default": "gen_random_uuid()"411        },412        "aggregated_uid": {413          "name": "aggregated_uid",414          "type": "text",415          "primaryKey": false,416          "notNull": true417        },418        "requester_id": {419          "name": "requester_id",420          "type": "uuid",421          "primaryKey": false,422          "notNull": true423        },424        "status": {425          "name": "status",426          "type": "text",427          "primaryKey": false,428          "notNull": true,429          "default": "'PENDING'"430        },431        "message": {432          "name": "message",433          "type": "text",434          "primaryKey": false,435          "notNull": false436        },437        "proof_keys": {438          "name": "proof_keys",439          "type": "jsonb",440          "primaryKey": false,441          "notNull": true,442          "default": "'[]'::jsonb"443        },444        "reviewed_by": {445          "name": "reviewed_by",446          "type": "uuid",447          "primaryKey": false,448          "notNull": false449        },450        "reviewed_at": {451          "name": "reviewed_at",452          "type": "timestamp with time zone",453          "primaryKey": false,454          "notNull": false455        },456        "created_at": {457          "name": "created_at",458          "type": "timestamp with time zone",459          "primaryKey": false,460          "notNull": true,461          "default": "now()"462        }463      },464      "indexes": {465        "listing_claims_uid_idx": {466          "name": "listing_claims_uid_idx",467          "columns": [468            {469              "expression": "aggregated_uid",470              "isExpression": false,471              "asc": true,472              "nulls": "last"473            }474          ],475          "isUnique": false,476          "concurrently": false,477          "method": "btree",478          "with": {}479        }480      },481      "foreignKeys": {482        "listing_claims_requester_id_users_id_fk": {483          "name": "listing_claims_requester_id_users_id_fk",484          "tableFrom": "listing_claims",485          "tableTo": "users",486          "columnsFrom": [487            "requester_id"488          ],489          "columnsTo": [490            "id"491          ],492          "onDelete": "cascade",493          "onUpdate": "no action"494        }495      },496      "compositePrimaryKeys": {},497      "uniqueConstraints": {},498      "policies": {},499      "checkConstraints": {},500      "isRLSEnabled": false501    },502    "public.listing_media": {503      "name": "listing_media",504      "schema": "",505      "columns": {506        "id": {507          "name": "id",508          "type": "uuid",509          "primaryKey": true,510          "notNull": true,511          "default": "gen_random_uuid()"512        },513        "listing_id": {514          "name": "listing_id",515          "type": "uuid",516          "primaryKey": false,517          "notNull": true518        },519        "storage_key": {520          "name": "storage_key",521          "type": "text",522          "primaryKey": false,523          "notNull": true524        },525        "media_type": {526          "name": "media_type",527          "type": "text",528          "primaryKey": false,529          "notNull": true,530          "default": "'IMAGE'"531        },532        "mime_type": {533          "name": "mime_type",534          "type": "text",535          "primaryKey": false,536          "notNull": false537        },538        "position": {539          "name": "position",540          "type": "integer",541          "primaryKey": false,542          "notNull": true,543          "default": 0544        },545        "alt_text": {546          "name": "alt_text",547          "type": "text",548          "primaryKey": false,549          "notNull": false550        },551        "license_status": {552          "name": "license_status",553          "type": "text",554          "primaryKey": false,555          "notNull": true,556          "default": "'OWNER_DECLARED'"557        },558        "scan_status": {559          "name": "scan_status",560          "type": "text",561          "primaryKey": false,562          "notNull": true,563          "default": "'PENDING'"564        },565        "width": {566          "name": "width",567          "type": "integer",568          "primaryKey": false,569          "notNull": false570        },571        "height": {572          "name": "height",573          "type": "integer",574          "primaryKey": false,575          "notNull": false576        },577        "bytes": {578          "name": "bytes",579          "type": "integer",580          "primaryKey": false,581          "notNull": false582        },583        "status": {584          "name": "status",585          "type": "text",586          "primaryKey": false,587          "notNull": true,588          "default": "'UPLOADING'"589        },590        "upload_token": {591          "name": "upload_token",592          "type": "text",593          "primaryKey": false,594          "notNull": false595        },596        "uploaded_at": {597          "name": "uploaded_at",598          "type": "timestamp with time zone",599          "primaryKey": false,600          "notNull": true,601          "default": "now()"602        }603      },604      "indexes": {605        "listing_media_listing_idx": {606          "name": "listing_media_listing_idx",607          "columns": [608            {609              "expression": "listing_id",610              "isExpression": false,611              "asc": true,612              "nulls": "last"613            },614            {615              "expression": "position",616              "isExpression": false,617              "asc": true,618              "nulls": "last"619            }620          ],621          "isUnique": false,622          "concurrently": false,623          "method": "btree",624          "with": {}625        }626      },627      "foreignKeys": {628        "listing_media_listing_id_listings_id_fk": {629          "name": "listing_media_listing_id_listings_id_fk",630          "tableFrom": "listing_media",631          "tableTo": "listings",632          "columnsFrom": [633            "listing_id"634          ],635          "columnsTo": [636            "id"637          ],638          "onDelete": "cascade",639          "onUpdate": "no action"640        }641      },642      "compositePrimaryKeys": {},643      "uniqueConstraints": {},644      "policies": {},645      "checkConstraints": {},646      "isRLSEnabled": false647    },648    "public.listing_versions": {649      "name": "listing_versions",650      "schema": "",651      "columns": {652        "id": {653          "name": "id",654          "type": "bigserial",655          "primaryKey": true,656          "notNull": true657        },658        "listing_id": {659          "name": "listing_id",660          "type": "uuid",661          "primaryKey": false,662          "notNull": true663        },664        "version": {665          "name": "version",666          "type": "integer",667          "primaryKey": false,668          "notNull": true669        },670        "actor_id": {671          "name": "actor_id",672          "type": "uuid",673          "primaryKey": false,674          "notNull": false675        },676        "snapshot": {677          "name": "snapshot",678          "type": "jsonb",679          "primaryKey": false,680          "notNull": true681        },682        "created_at": {683          "name": "created_at",684          "type": "timestamp with time zone",685          "primaryKey": false,686          "notNull": true,687          "default": "now()"688        }689      },690      "indexes": {691        "listing_versions_listing_idx": {692          "name": "listing_versions_listing_idx",693          "columns": [694            {695              "expression": "listing_id",696              "isExpression": false,697              "asc": true,698              "nulls": "last"699            },700            {701              "expression": "version",702              "isExpression": false,703              "asc": true,704              "nulls": "last"705            }706          ],707          "isUnique": false,708          "concurrently": false,709          "method": "btree",710          "with": {}711        }712      },713      "foreignKeys": {714        "listing_versions_listing_id_listings_id_fk": {715          "name": "listing_versions_listing_id_listings_id_fk",716          "tableFrom": "listing_versions",717          "tableTo": "listings",718          "columnsFrom": [719            "listing_id"720          ],721          "columnsTo": [722            "id"723          ],724          "onDelete": "cascade",725          "onUpdate": "no action"726        }727      },728      "compositePrimaryKeys": {},729      "uniqueConstraints": {},730      "policies": {},731      "checkConstraints": {},732      "isRLSEnabled": false733    },734    "public.listings": {735      "name": "listings",736      "schema": "",737      "columns": {738        "id": {739          "name": "id",740          "type": "uuid",741          "primaryKey": true,742          "notNull": true,743          "default": "gen_random_uuid()"744        },745        "slug": {746          "name": "slug",747          "type": "text",748          "primaryKey": false,749          "notNull": true750        },751        "property_id": {752          "name": "property_id",753          "type": "uuid",754          "primaryKey": false,755          "notNull": true756        },757        "owner_user_id": {758          "name": "owner_user_id",759          "type": "uuid",760          "primaryKey": false,761          "notNull": false762        },763        "listing_type": {764          "name": "listing_type",765          "type": "text",766          "primaryKey": false,767          "notNull": true768        },769        "source_type": {770          "name": "source_type",771          "type": "text",772          "primaryKey": false,773          "notNull": true,774          "default": "'DIRECT_OWNER'"775        },776        "status": {777          "name": "status",778          "type": "text",779          "primaryKey": false,780          "notNull": true,781          "default": "'DRAFT'"782        },783        "title": {784          "name": "title",785          "type": "text",786          "primaryKey": false,787          "notNull": false788        },789        "description": {790          "name": "description",791          "type": "text",792          "primaryKey": false,793          "notNull": false794        },795        "price_amount": {796          "name": "price_amount",797          "type": "numeric(12, 2)",798          "primaryKey": false,799          "notNull": false800        },801        "currency": {802          "name": "currency",803          "type": "text",804          "primaryKey": false,805          "notNull": true,806          "default": "'CAD'"807        },808        "rental_period": {809          "name": "rental_period",810          "type": "text",811          "primaryKey": false,812          "notNull": false813        },814        "availability_date": {815          "name": "availability_date",816          "type": "text",817          "primaryKey": false,818          "notNull": false819        },820        "furnished": {821          "name": "furnished",822          "type": "boolean",823          "primaryKey": false,824          "notNull": false825        },826        "pets_policy": {827          "name": "pets_policy",828          "type": "text",829          "primaryKey": false,830          "notNull": false831        },832        "smoking_policy": {833          "name": "smoking_policy",834          "type": "text",835          "primaryKey": false,836          "notNull": false837        },838        "parking": {839          "name": "parking",840          "type": "text",841          "primaryKey": false,842          "notNull": false843        },844        "lease_terms": {845          "name": "lease_terms",846          "type": "text",847          "primaryKey": false,848          "notNull": false849        },850        "inclusions": {851          "name": "inclusions",852          "type": "jsonb",853          "primaryKey": false,854          "notNull": true,855          "default": "'[]'::jsonb"856        },857        "features": {858          "name": "features",859          "type": "jsonb",860          "primaryKey": false,861          "notNull": true,862          "default": "'{}'::jsonb"863        },864        "publication_at": {865          "name": "publication_at",866          "type": "timestamp with time zone",867          "primaryKey": false,868          "notNull": false869        },870        "expires_at": {871          "name": "expires_at",872          "type": "timestamp with time zone",873          "primaryKey": false,874          "notNull": false875        },876        "moderation_state": {877          "name": "moderation_state",878          "type": "text",879          "primaryKey": false,880          "notNull": true,881          "default": "'NONE'"882        },883        "moderation_note": {884          "name": "moderation_note",885          "type": "text",886          "primaryKey": false,887          "notNull": false888        },889        "external_url": {890          "name": "external_url",891          "type": "text",892          "primaryKey": false,893          "notNull": false894        },895        "upstream_source": {896          "name": "upstream_source",897          "type": "text",898          "primaryKey": false,899          "notNull": false900        },901        "upstream_id": {902          "name": "upstream_id",903          "type": "text",904          "primaryKey": false,905          "notNull": false906        },907        "upstream_sync_at": {908          "name": "upstream_sync_at",909          "type": "timestamp with time zone",910          "primaryKey": false,911          "notNull": false912        },913        "wizard_step": {914          "name": "wizard_step",915          "type": "integer",916          "primaryKey": false,917          "notNull": true,918          "default": 0919        },920        "attested_at": {921          "name": "attested_at",922          "type": "timestamp with time zone",923          "primaryKey": false,924          "notNull": false925        },926        "version": {927          "name": "version",928          "type": "integer",929          "primaryKey": false,930          "notNull": true,931          "default": 1932        },933        "views_count": {934          "name": "views_count",935          "type": "integer",936          "primaryKey": false,937          "notNull": true,938          "default": 0939        },940        "created_at": {941          "name": "created_at",942          "type": "timestamp with time zone",943          "primaryKey": false,944          "notNull": true,945          "default": "now()"946        },947        "updated_at": {948          "name": "updated_at",949          "type": "timestamp with time zone",950          "primaryKey": false,951          "notNull": true,952          "default": "now()"953        }954      },955      "indexes": {956        "listings_slug_uq": {957          "name": "listings_slug_uq",958          "columns": [959            {960              "expression": "slug",961              "isExpression": false,962              "asc": true,963              "nulls": "last"964            }965          ],966          "isUnique": true,967          "concurrently": false,968          "method": "btree",969          "with": {}970        },971        "listings_status_idx": {972          "name": "listings_status_idx",973          "columns": [974            {975              "expression": "status",976              "isExpression": false,977              "asc": true,978              "nulls": "last"979            },980            {981              "expression": "listing_type",982              "isExpression": false,983              "asc": true,984              "nulls": "last"985            },986            {987              "expression": "publication_at",988              "isExpression": false,989              "asc": true,990              "nulls": "last"991            }992          ],993          "isUnique": false,994          "concurrently": false,995          "method": "btree",996          "with": {}997        },998        "listings_owner_idx": {999          "name": "listings_owner_idx",1000          "columns": [1001            {1002              "expression": "owner_user_id",1003              "isExpression": false,1004              "asc": true,1005              "nulls": "last"1006            }1007          ],1008          "isUnique": false,1009          "concurrently": false,1010          "method": "btree",1011          "with": {}1012        },1013        "listings_upstream_uq": {1014          "name": "listings_upstream_uq",1015          "columns": [1016            {1017              "expression": "upstream_source",1018              "isExpression": false,1019              "asc": true,1020              "nulls": "last"1021            },1022            {1023              "expression": "upstream_id",1024              "isExpression": false,1025              "asc": true,1026              "nulls": "last"1027            }1028          ],1029          "isUnique": true,1030          "concurrently": false,1031          "method": "btree",1032          "with": {}1033        }1034      },1035      "foreignKeys": {1036        "listings_property_id_properties_id_fk": {1037          "name": "listings_property_id_properties_id_fk",1038          "tableFrom": "listings",1039          "tableTo": "properties",1040          "columnsFrom": [1041            "property_id"1042          ],1043          "columnsTo": [1044            "id"1045          ],1046          "onDelete": "restrict",1047          "onUpdate": "no action"1048        },1049        "listings_owner_user_id_users_id_fk": {1050          "name": "listings_owner_user_id_users_id_fk",1051          "tableFrom": "listings",1052          "tableTo": "users",1053          "columnsFrom": [1054            "owner_user_id"1055          ],1056          "columnsTo": [1057            "id"1058          ],1059          "onDelete": "set null",1060          "onUpdate": "no action"1061        }1062      },1063      "compositePrimaryKeys": {},1064      "uniqueConstraints": {},1065      "policies": {},1066      "checkConstraints": {1067        "listings_type_ck": {1068          "name": "listings_type_ck",1069          "value": "\"listings\".\"listing_type\" in ('SALE','RENT')"1070        },1071        "listings_source_ck": {1072          "name": "listings_source_ck",1073          "value": "\"listings\".\"source_type\" in ('DIRECT_OWNER','DIRECT_AGENT','AGGREGATED_PARTNER')"1074        },1075        "listings_status_ck": {1076          "name": "listings_status_ck",1077          "value": "\"listings\".\"status\" in ('DRAFT','PENDING_REVIEW','PUBLISHED','PAUSED','REJECTED','ARCHIVED','SOLD','RENTED')"1078        },1079        "listings_price_ck": {1080          "name": "listings_price_ck",1081          "value": "\"listings\".\"price_amount\" is null or \"listings\".\"price_amount\" >= 0"1082        },1083        "listings_owner_direct_ck": {1084          "name": "listings_owner_direct_ck",1085          "value": "\"listings\".\"source_type\" = 'AGGREGATED_PARTNER' or \"listings\".\"owner_user_id\" is not null"1086        },1087        "listings_rent_period_ck": {1088          "name": "listings_rent_period_ck",1089          "value": "\"listings\".\"listing_type\" <> 'RENT' or \"listings\".\"rental_period\" is null or \"listings\".\"rental_period\" in ('MONTH','WEEK')"1090        }1091      },1092      "isRLSEnabled": false1093    },1094    "public.messages": {1095      "name": "messages",1096      "schema": "",1097      "columns": {1098        "id": {1099          "name": "id",1100          "type": "uuid",1101          "primaryKey": true,1102          "notNull": true,1103          "default": "gen_random_uuid()"1104        },1105        "inquiry_id": {1106          "name": "inquiry_id",1107          "type": "uuid",1108          "primaryKey": false,1109          "notNull": true1110        },1111        "sender_id": {1112          "name": "sender_id",1113          "type": "uuid",1114          "primaryKey": false,1115          "notNull": true1116        },1117        "body": {1118          "name": "body",1119          "type": "text",1120          "primaryKey": false,1121          "notNull": true1122        },1123        "idempotency_key": {1124          "name": "idempotency_key",1125          "type": "text",1126          "primaryKey": false,1127          "notNull": false1128        },1129        "created_at": {1130          "name": "created_at",1131          "type": "timestamp with time zone",1132          "primaryKey": false,1133          "notNull": true,1134          "default": "now()"1135        },1136        "read_at": {1137          "name": "read_at",1138          "type": "timestamp with time zone",1139          "primaryKey": false,1140          "notNull": false1141        }1142      },1143      "indexes": {1144        "messages_inquiry_idx": {1145          "name": "messages_inquiry_idx",1146          "columns": [1147            {1148              "expression": "inquiry_id",1149              "isExpression": false,1150              "asc": true,1151              "nulls": "last"1152            },1153            {1154              "expression": "created_at",1155              "isExpression": false,1156              "asc": true,1157              "nulls": "last"1158            }1159          ],1160          "isUnique": false,1161          "concurrently": false,1162          "method": "btree",1163          "with": {}1164        },1165        "messages_idem_uq": {1166          "name": "messages_idem_uq",1167          "columns": [1168            {1169              "expression": "inquiry_id",1170              "isExpression": false,1171              "asc": true,1172              "nulls": "last"1173            },1174            {1175              "expression": "idempotency_key",1176              "isExpression": false,1177              "asc": true,1178              "nulls": "last"1179            }1180          ],1181          "isUnique": true,1182          "concurrently": false,1183          "method": "btree",1184          "with": {}1185        }1186      },1187      "foreignKeys": {1188        "messages_inquiry_id_inquiries_id_fk": {1189          "name": "messages_inquiry_id_inquiries_id_fk",1190          "tableFrom": "messages",1191          "tableTo": "inquiries",1192          "columnsFrom": [1193            "inquiry_id"1194          ],1195          "columnsTo": [1196            "id"1197          ],1198          "onDelete": "cascade",1199          "onUpdate": "no action"1200        },1201        "messages_sender_id_users_id_fk": {1202          "name": "messages_sender_id_users_id_fk",1203          "tableFrom": "messages",1204          "tableTo": "users",1205          "columnsFrom": [1206            "sender_id"1207          ],1208          "columnsTo": [1209            "id"1210          ],1211          "onDelete": "cascade",1212          "onUpdate": "no action"1213        }1214      },1215      "compositePrimaryKeys": {},1216      "uniqueConstraints": {},1217      "policies": {},1218      "checkConstraints": {},1219      "isRLSEnabled": false1220    },1221    "public.moderation_actions": {1222      "name": "moderation_actions",1223      "schema": "",1224      "columns": {1225        "id": {1226          "name": "id",1227          "type": "bigserial",1228          "primaryKey": true,1229          "notNull": true1230        },1231        "actor_id": {1232          "name": "actor_id",1233          "type": "uuid",1234          "primaryKey": false,1235          "notNull": true1236        },1237        "target_type": {1238          "name": "target_type",1239          "type": "text",1240          "primaryKey": false,1241          "notNull": true1242        },1243        "target_id": {1244          "name": "target_id",1245          "type": "text",1246          "primaryKey": false,1247          "notNull": true1248        },1249        "action": {1250          "name": "action",1251          "type": "text",1252          "primaryKey": false,1253          "notNull": true1254        },1255        "note": {1256          "name": "note",1257          "type": "text",1258          "primaryKey": false,1259          "notNull": false1260        },1261        "created_at": {1262          "name": "created_at",1263          "type": "timestamp with time zone",1264          "primaryKey": false,1265          "notNull": true,1266          "default": "now()"1267        }1268      },1269      "indexes": {},1270      "foreignKeys": {},1271      "compositePrimaryKeys": {},1272      "uniqueConstraints": {},1273      "policies": {},1274      "checkConstraints": {},1275      "isRLSEnabled": false1276    },1277    "public.otp_challenges": {1278      "name": "otp_challenges",1279      "schema": "",1280      "columns": {1281        "id": {1282          "name": "id",1283          "type": "uuid",1284          "primaryKey": true,1285          "notNull": true,1286          "default": "gen_random_uuid()"1287        },1288        "email_normalized": {1289          "name": "email_normalized",1290          "type": "text",1291          "primaryKey": false,1292          "notNull": true1293        },1294        "purpose": {1295          "name": "purpose",1296          "type": "text",1297          "primaryKey": false,1298          "notNull": true,1299          "default": "'LOGIN'"1300        },1301        "secret_digest": {1302          "name": "secret_digest",1303          "type": "text",1304          "primaryKey": false,1305          "notNull": true1306        },1307        "expires_at": {1308          "name": "expires_at",1309          "type": "timestamp with time zone",1310          "primaryKey": false,1311          "notNull": true1312        },1313        "attempts": {1314          "name": "attempts",1315          "type": "integer",1316          "primaryKey": false,1317          "notNull": true,1318          "default": 01319        },1320        "consumed_at": {1321          "name": "consumed_at",1322          "type": "timestamp with time zone",1323          "primaryKey": false,1324          "notNull": false1325        },1326        "requested_ip_hash": {1327          "name": "requested_ip_hash",1328          "type": "text",1329          "primaryKey": false,1330          "notNull": false1331        },1332        "meta": {1333          "name": "meta",1334          "type": "jsonb",1335          "primaryKey": false,1336          "notNull": true,1337          "default": "'{}'::jsonb"1338        },1339        "created_at": {1340          "name": "created_at",1341          "type": "timestamp with time zone",1342          "primaryKey": false,1343          "notNull": true,1344          "default": "now()"1345        }1346      },1347      "indexes": {1348        "otp_email_idx": {1349          "name": "otp_email_idx",1350          "columns": [1351            {1352              "expression": "email_normalized",1353              "isExpression": false,1354              "asc": true,1355              "nulls": "last"1356            },1357            {1358              "expression": "created_at",1359              "isExpression": false,1360              "asc": true,1361              "nulls": "last"1362            }1363          ],1364          "isUnique": false,1365          "concurrently": false,1366          "method": "btree",1367          "with": {}1368        },1369        "otp_expires_idx": {1370          "name": "otp_expires_idx",1371          "columns": [1372            {1373              "expression": "expires_at",1374              "isExpression": false,1375              "asc": true,1376              "nulls": "last"1377            }1378          ],1379          "isUnique": false,1380          "concurrently": false,1381          "method": "btree",1382          "with": {}1383        }1384      },1385      "foreignKeys": {},1386      "compositePrimaryKeys": {},1387      "uniqueConstraints": {},1388      "policies": {},1389      "checkConstraints": {},1390      "isRLSEnabled": false1391    },1392    "public.properties": {1393      "name": "properties",1394      "schema": "",1395      "columns": {1396        "id": {1397          "name": "id",1398          "type": "uuid",1399          "primaryKey": true,1400          "notNull": true,1401          "default": "gen_random_uuid()"1402        },1403        "canonical_address": {1404          "name": "canonical_address",1405          "type": "text",1406          "primaryKey": false,1407          "notNull": false1408        },1409        "unit": {1410          "name": "unit",1411          "type": "text",1412          "primaryKey": false,1413          "notNull": false1414        },1415        "city": {1416          "name": "city",1417          "type": "text",1418          "primaryKey": false,1419          "notNull": false1420        },1421        "region": {1422          "name": "region",1423          "type": "text",1424          "primaryKey": false,1425          "notNull": false1426        },1427        "postal_code": {1428          "name": "postal_code",1429          "type": "text",1430          "primaryKey": false,1431          "notNull": false1432        },1433        "lat": {1434          "name": "lat",1435          "type": "double precision",1436          "primaryKey": false,1437          "notNull": false1438        },1439        "lng": {1440          "name": "lng",1441          "type": "double precision",1442          "primaryKey": false,1443          "notNull": false1444        },1445        "geographic_precision": {1446          "name": "geographic_precision",1447          "type": "text",1448          "primaryKey": false,1449          "notNull": true,1450          "default": "'EXACT'"1451        },1452        "geo_source": {1453          "name": "geo_source",1454          "type": "text",1455          "primaryKey": false,1456          "notNull": false1457        },1458        "role_unit_id": {1459          "name": "role_unit_id",1460          "type": "text",1461          "primaryKey": false,1462          "notNull": false1463        },1464        "property_type": {1465          "name": "property_type",1466          "type": "text",1467          "primaryKey": false,1468          "notNull": true1469        },1470        "bedrooms": {1471          "name": "bedrooms",1472          "type": "numeric(4, 1)",1473          "primaryKey": false,1474          "notNull": false1475        },1476        "bathrooms": {1477          "name": "bathrooms",1478          "type": "numeric(4, 1)",1479          "primaryKey": false,1480          "notNull": false1481        },1482        "area_sqft": {1483          "name": "area_sqft",1484          "type": "integer",1485          "primaryKey": false,1486          "notNull": false1487        },1488        "lot_sqft": {1489          "name": "lot_sqft",1490          "type": "integer",1491          "primaryKey": false,1492          "notNull": false1493        },1494        "year_built": {1495          "name": "year_built",1496          "type": "integer",1497          "primaryKey": false,1498          "notNull": false1499        },1500        "privacy_level": {1501          "name": "privacy_level",1502          "type": "text",1503          "primaryKey": false,1504          "notNull": true,1505          "default": "'EXACT'"1506        },1507        "created_at": {1508          "name": "created_at",1509          "type": "timestamp with time zone",1510          "primaryKey": false,1511          "notNull": true,1512          "default": "now()"1513        }1514      },1515      "indexes": {1516        "properties_geo_idx": {1517          "name": "properties_geo_idx",1518          "columns": [1519            {1520              "expression": "lat",1521              "isExpression": false,1522              "asc": true,1523              "nulls": "last"1524            },1525            {1526              "expression": "lng",1527              "isExpression": false,1528              "asc": true,1529              "nulls": "last"1530            }1531          ],1532          "isUnique": false,1533          "concurrently": false,1534          "method": "btree",1535          "with": {}1536        },1537        "properties_city_idx": {1538          "name": "properties_city_idx",1539          "columns": [1540            {1541              "expression": "city",1542              "isExpression": false,1543              "asc": true,1544              "nulls": "last"1545            }1546          ],1547          "isUnique": false,1548          "concurrently": false,1549          "method": "btree",1550          "with": {}1551        }1552      },1553      "foreignKeys": {},1554      "compositePrimaryKeys": {},1555      "uniqueConstraints": {},1556      "policies": {},1557      "checkConstraints": {},1558      "isRLSEnabled": false1559    },1560    "public.rate_limits": {1561      "name": "rate_limits",1562      "schema": "",1563      "columns": {1564        "key": {1565          "name": "key",1566          "type": "text",1567          "primaryKey": false,1568          "notNull": true1569        },1570        "window_start": {1571          "name": "window_start",1572          "type": "timestamp with time zone",1573          "primaryKey": false,1574          "notNull": true1575        },1576        "count": {1577          "name": "count",1578          "type": "integer",1579          "primaryKey": false,1580          "notNull": true,1581          "default": 01582        }1583      },1584      "indexes": {},1585      "foreignKeys": {},1586      "compositePrimaryKeys": {1587        "rate_limits_key_window_start_pk": {1588          "name": "rate_limits_key_window_start_pk",1589          "columns": [1590            "key",1591            "window_start"1592          ]1593        }1594      },1595      "uniqueConstraints": {},1596      "policies": {},1597      "checkConstraints": {},1598      "isRLSEnabled": false1599    },1600    "public.reports": {1601      "name": "reports",1602      "schema": "",1603      "columns": {1604        "id": {1605          "name": "id",1606          "type": "uuid",1607          "primaryKey": true,1608          "notNull": true,1609          "default": "gen_random_uuid()"1610        },1611        "target_type": {1612          "name": "target_type",1613          "type": "text",1614          "primaryKey": false,1615          "notNull": true1616        },1617        "target_id": {1618          "name": "target_id",1619          "type": "text",1620          "primaryKey": false,1621          "notNull": true1622        },1623        "reporter_id": {1624          "name": "reporter_id",1625          "type": "uuid",1626          "primaryKey": false,1627          "notNull": false1628        },1629        "reason": {1630          "name": "reason",1631          "type": "text",1632          "primaryKey": false,1633          "notNull": true1634        },1635        "details": {1636          "name": "details",1637          "type": "text",1638          "primaryKey": false,1639          "notNull": false1640        },1641        "status": {1642          "name": "status",1643          "type": "text",1644          "primaryKey": false,1645          "notNull": true,1646          "default": "'OPEN'"1647        },1648        "created_at": {1649          "name": "created_at",1650          "type": "timestamp with time zone",1651          "primaryKey": false,1652          "notNull": true,1653          "default": "now()"1654        }1655      },1656      "indexes": {1657        "reports_status_idx": {1658          "name": "reports_status_idx",1659          "columns": [1660            {1661              "expression": "status",1662              "isExpression": false,1663              "asc": true,1664              "nulls": "last"1665            },1666            {1667              "expression": "created_at",1668              "isExpression": false,1669              "asc": true,1670              "nulls": "last"1671            }1672          ],1673          "isUnique": false,1674          "concurrently": false,1675          "method": "btree",1676          "with": {}1677        }1678      },1679      "foreignKeys": {1680        "reports_reporter_id_users_id_fk": {1681          "name": "reports_reporter_id_users_id_fk",1682          "tableFrom": "reports",1683          "tableTo": "users",1684          "columnsFrom": [1685            "reporter_id"1686          ],1687          "columnsTo": [1688            "id"1689          ],1690          "onDelete": "set null",1691          "onUpdate": "no action"1692        }1693      },1694      "compositePrimaryKeys": {},1695      "uniqueConstraints": {},1696      "policies": {},1697      "checkConstraints": {},1698      "isRLSEnabled": false1699    },1700    "public.saved_searches": {1701      "name": "saved_searches",1702      "schema": "",1703      "columns": {1704        "id": {1705          "name": "id",1706          "type": "uuid",1707          "primaryKey": true,1708          "notNull": true,1709          "default": "gen_random_uuid()"1710        },1711        "user_id": {1712          "name": "user_id",1713          "type": "uuid",1714          "primaryKey": false,1715          "notNull": true1716        },1717        "label": {1718          "name": "label",1719          "type": "text",1720          "primaryKey": false,1721          "notNull": true1722        },1723        "query": {1724          "name": "query",1725          "type": "jsonb",1726          "primaryKey": false,1727          "notNull": true1728        },1729        "alert_enabled": {1730          "name": "alert_enabled",1731          "type": "boolean",1732          "primaryKey": false,1733          "notNull": true,1734          "default": false1735        },1736        "alert_frequency": {1737          "name": "alert_frequency",1738          "type": "text",1739          "primaryKey": false,1740          "notNull": true,1741          "default": "'DAILY'"1742        },1743        "last_alert_at": {1744          "name": "last_alert_at",1745          "type": "timestamp with time zone",1746          "primaryKey": false,1747          "notNull": false1748        },1749        "created_at": {1750          "name": "created_at",1751          "type": "timestamp with time zone",1752          "primaryKey": false,1753          "notNull": true,1754          "default": "now()"1755        }1756      },1757      "indexes": {1758        "saved_searches_user_idx": {1759          "name": "saved_searches_user_idx",1760          "columns": [1761            {1762              "expression": "user_id",1763              "isExpression": false,1764              "asc": true,1765              "nulls": "last"1766            }1767          ],1768          "isUnique": false,1769          "concurrently": false,1770          "method": "btree",1771          "with": {}1772        }1773      },1774      "foreignKeys": {1775        "saved_searches_user_id_users_id_fk": {1776          "name": "saved_searches_user_id_users_id_fk",1777          "tableFrom": "saved_searches",1778          "tableTo": "users",1779          "columnsFrom": [1780            "user_id"1781          ],1782          "columnsTo": [1783            "id"1784          ],1785          "onDelete": "cascade",1786          "onUpdate": "no action"1787        }1788      },1789      "compositePrimaryKeys": {},1790      "uniqueConstraints": {},1791      "policies": {},1792      "checkConstraints": {},1793      "isRLSEnabled": false1794    },1795    "public.sessions": {1796      "name": "sessions",1797      "schema": "",1798      "columns": {1799        "id": {1800          "name": "id",1801          "type": "uuid",1802          "primaryKey": true,1803          "notNull": true,1804          "default": "gen_random_uuid()"1805        },1806        "user_id": {1807          "name": "user_id",1808          "type": "uuid",1809          "primaryKey": false,1810          "notNull": true1811        },1812        "token_digest": {1813          "name": "token_digest",1814          "type": "text",1815          "primaryKey": false,1816          "notNull": true1817        },1818        "issued_at": {1819          "name": "issued_at",1820          "type": "timestamp with time zone",1821          "primaryKey": false,1822          "notNull": true,1823          "default": "now()"1824        },1825        "last_seen_at": {1826          "name": "last_seen_at",1827          "type": "timestamp with time zone",1828          "primaryKey": false,1829          "notNull": true,1830          "default": "now()"1831        },1832        "expires_at": {1833          "name": "expires_at",1834          "type": "timestamp with time zone",1835          "primaryKey": false,1836          "notNull": true1837        },1838        "revoked_at": {1839          "name": "revoked_at",1840          "type": "timestamp with time zone",1841          "primaryKey": false,1842          "notNull": false1843        },1844        "device_label": {1845          "name": "device_label",1846          "type": "text",1847          "primaryKey": false,1848          "notNull": false1849        },1850        "ip_hash": {1851          "name": "ip_hash",1852          "type": "text",1853          "primaryKey": false,1854          "notNull": false1855        },1856        "mfa_at": {1857          "name": "mfa_at",1858          "type": "timestamp with time zone",1859          "primaryKey": false,1860          "notNull": false1861        }1862      },1863      "indexes": {1864        "sessions_token_uq": {1865          "name": "sessions_token_uq",1866          "columns": [1867            {1868              "expression": "token_digest",1869              "isExpression": false,1870              "asc": true,1871              "nulls": "last"1872            }1873          ],1874          "isUnique": true,1875          "concurrently": false,1876          "method": "btree",1877          "with": {}1878        },1879        "sessions_user_idx": {1880          "name": "sessions_user_idx",1881          "columns": [1882            {1883              "expression": "user_id",1884              "isExpression": false,1885              "asc": true,1886              "nulls": "last"1887            }1888          ],1889          "isUnique": false,1890          "concurrently": false,1891          "method": "btree",1892          "with": {}1893        }1894      },1895      "foreignKeys": {1896        "sessions_user_id_users_id_fk": {1897          "name": "sessions_user_id_users_id_fk",1898          "tableFrom": "sessions",1899          "tableTo": "users",1900          "columnsFrom": [1901            "user_id"1902          ],1903          "columnsTo": [1904            "id"1905          ],1906          "onDelete": "cascade",1907          "onUpdate": "no action"1908        }1909      },1910      "compositePrimaryKeys": {},1911      "uniqueConstraints": {},1912      "policies": {},1913      "checkConstraints": {},1914      "isRLSEnabled": false1915    },1916    "public.user_profiles": {1917      "name": "user_profiles",1918      "schema": "",1919      "columns": {1920        "user_id": {1921          "name": "user_id",1922          "type": "uuid",1923          "primaryKey": true,1924          "notNull": true1925        },1926        "public_name": {1927          "name": "public_name",1928          "type": "text",1929          "primaryKey": false,1930          "notNull": false1931        },1932        "bio": {1933          "name": "bio",1934          "type": "text",1935          "primaryKey": false,1936          "notNull": false1937        },1938        "avatar_key": {1939          "name": "avatar_key",1940          "type": "text",1941          "primaryKey": false,1942          "notNull": false1943        },1944        "seller_type": {1945          "name": "seller_type",1946          "type": "text",1947          "primaryKey": false,1948          "notNull": true,1949          "default": "'OWNER'"1950        },1951        "verification_status": {1952          "name": "verification_status",1953          "type": "text",1954          "primaryKey": false,1955          "notNull": true,1956          "default": "'NONE'"1957        },1958        "contact_preferences": {1959          "name": "contact_preferences",1960          "type": "jsonb",1961          "primaryKey": false,1962          "notNull": true,1963          "default": "'{\"email\":true,\"phone\":false}'::jsonb"1964        },1965        "updated_at": {1966          "name": "updated_at",1967          "type": "timestamp with time zone",1968          "primaryKey": false,1969          "notNull": true,1970          "default": "now()"1971        }1972      },1973      "indexes": {},1974      "foreignKeys": {1975        "user_profiles_user_id_users_id_fk": {1976          "name": "user_profiles_user_id_users_id_fk",1977          "tableFrom": "user_profiles",1978          "tableTo": "users",1979          "columnsFrom": [1980            "user_id"1981          ],1982          "columnsTo": [1983            "id"1984          ],1985          "onDelete": "cascade",1986          "onUpdate": "no action"1987        }1988      },1989      "compositePrimaryKeys": {},1990      "uniqueConstraints": {},1991      "policies": {},1992      "checkConstraints": {},1993      "isRLSEnabled": false1994    },1995    "public.user_roles": {1996      "name": "user_roles",1997      "schema": "",1998      "columns": {1999        "user_id": {2000          "name": "user_id",2001          "type": "uuid",2002          "primaryKey": false,2003          "notNull": true2004        },2005        "role": {2006          "name": "role",2007          "type": "text",2008          "primaryKey": false,2009          "notNull": true2010        },2011        "granted_by": {2012          "name": "granted_by",2013          "type": "uuid",2014          "primaryKey": false,2015          "notNull": false2016        },2017        "granted_at": {2018          "name": "granted_at",2019          "type": "timestamp with time zone",2020          "primaryKey": false,2021          "notNull": true,2022          "default": "now()"2023        },2024        "note": {2025          "name": "note",2026          "type": "text",2027          "primaryKey": false,2028          "notNull": false2029        }2030      },2031      "indexes": {},2032      "foreignKeys": {2033        "user_roles_user_id_users_id_fk": {2034          "name": "user_roles_user_id_users_id_fk",2035          "tableFrom": "user_roles",2036          "tableTo": "users",2037          "columnsFrom": [2038            "user_id"2039          ],2040          "columnsTo": [2041            "id"2042          ],2043          "onDelete": "cascade",2044          "onUpdate": "no action"2045        }2046      },2047      "compositePrimaryKeys": {2048        "user_roles_user_id_role_pk": {2049          "name": "user_roles_user_id_role_pk",2050          "columns": [2051            "user_id",2052            "role"2053          ]2054        }2055      },2056      "uniqueConstraints": {},2057      "policies": {},2058      "checkConstraints": {2059        "user_roles_role_ck": {2060          "name": "user_roles_role_ck",2061          "value": "\"user_roles\".\"role\" in ('ADMIN','MODERATOR','AGENT_VERIFIED')"2062        }2063      },2064      "isRLSEnabled": false2065    },2066    "public.users": {2067      "name": "users",2068      "schema": "",2069      "columns": {2070        "id": {2071          "name": "id",2072          "type": "uuid",2073          "primaryKey": true,2074          "notNull": true,2075          "default": "gen_random_uuid()"2076        },2077        "email": {2078          "name": "email",2079          "type": "text",2080          "primaryKey": false,2081          "notNull": true2082        },2083        "email_verified_at": {2084          "name": "email_verified_at",2085          "type": "timestamp with time zone",2086          "primaryKey": false,2087          "notNull": false2088        },2089        "display_name": {2090          "name": "display_name",2091          "type": "text",2092          "primaryKey": false,2093          "notNull": false2094        },2095        "phone_encrypted": {2096          "name": "phone_encrypted",2097          "type": "text",2098          "primaryKey": false,2099          "notNull": false2100        },2101        "locale": {2102          "name": "locale",2103          "type": "text",2104          "primaryKey": false,2105          "notNull": true,2106          "default": "'fr-CA'"2107        },2108        "status": {2109          "name": "status",2110          "type": "text",2111          "primaryKey": false,2112          "notNull": true,2113          "default": "'ACTIVE'"2114        },2115        "prefs": {2116          "name": "prefs",2117          "type": "jsonb",2118          "primaryKey": false,2119          "notNull": true,2120          "default": "'{}'::jsonb"2121        },2122        "totp_secret_encrypted": {2123          "name": "totp_secret_encrypted",2124          "type": "text",2125          "primaryKey": false,2126          "notNull": false2127        },2128        "created_at": {2129          "name": "created_at",2130          "type": "timestamp with time zone",2131          "primaryKey": false,2132          "notNull": true,2133          "default": "now()"2134        },2135        "updated_at": {2136          "name": "updated_at",2137          "type": "timestamp with time zone",2138          "primaryKey": false,2139          "notNull": true,2140          "default": "now()"2141        },2142        "deleted_at": {2143          "name": "deleted_at",2144          "type": "timestamp with time zone",2145          "primaryKey": false,2146          "notNull": false2147        }2148      },2149      "indexes": {2150        "users_email_uq": {2151          "name": "users_email_uq",2152          "columns": [2153            {2154              "expression": "email",2155              "isExpression": false,2156              "asc": true,2157              "nulls": "last"2158            }2159          ],2160          "isUnique": true,2161          "concurrently": false,2162          "method": "btree",2163          "with": {}2164        }2165      },2166      "foreignKeys": {},2167      "compositePrimaryKeys": {},2168      "uniqueConstraints": {},2169      "policies": {},2170      "checkConstraints": {2171        "users_status_ck": {2172          "name": "users_status_ck",2173          "value": "\"users\".\"status\" in ('ACTIVE','SUSPENDED','DELETED')"2174        }2175      },2176      "isRLSEnabled": false2177    },2178    "public.viewing_requests": {2179      "name": "viewing_requests",2180      "schema": "",2181      "columns": {2182        "id": {2183          "name": "id",2184          "type": "uuid",2185          "primaryKey": true,2186          "notNull": true,2187          "default": "gen_random_uuid()"2188        },2189        "listing_id": {2190          "name": "listing_id",2191          "type": "uuid",2192          "primaryKey": false,2193          "notNull": true2194        },2195        "inquiry_id": {2196          "name": "inquiry_id",2197          "type": "uuid",2198          "primaryKey": false,2199          "notNull": false2200        },2201        "requester_id": {2202          "name": "requester_id",2203          "type": "uuid",2204          "primaryKey": false,2205          "notNull": true2206        },2207        "owner_id": {2208          "name": "owner_id",2209          "type": "uuid",2210          "primaryKey": false,2211          "notNull": true2212        },2213        "proposed_slots": {2214          "name": "proposed_slots",2215          "type": "jsonb",2216          "primaryKey": false,2217          "notNull": true2218        },2219        "confirmed_slot": {2220          "name": "confirmed_slot",2221          "type": "timestamp with time zone",2222          "primaryKey": false,2223          "notNull": false2224        },2225        "status": {2226          "name": "status",2227          "type": "text",2228          "primaryKey": false,2229          "notNull": true,2230          "default": "'REQUESTED'"2231        },2232        "note": {2233          "name": "note",2234          "type": "text",2235          "primaryKey": false,2236          "notNull": false2237        },2238        "created_at": {2239          "name": "created_at",2240          "type": "timestamp with time zone",2241          "primaryKey": false,2242          "notNull": true,2243          "default": "now()"2244        },2245        "updated_at": {2246          "name": "updated_at",2247          "type": "timestamp with time zone",2248          "primaryKey": false,2249          "notNull": true,2250          "default": "now()"2251        }2252      },2253      "indexes": {2254        "viewings_listing_idx": {2255          "name": "viewings_listing_idx",2256          "columns": [2257            {2258              "expression": "listing_id",2259              "isExpression": false,2260              "asc": true,2261              "nulls": "last"2262            }2263          ],2264          "isUnique": false,2265          "concurrently": false,2266          "method": "btree",2267          "with": {}2268        },2269        "viewings_requester_idx": {2270          "name": "viewings_requester_idx",2271          "columns": [2272            {2273              "expression": "requester_id",2274              "isExpression": false,2275              "asc": true,2276              "nulls": "last"2277            }2278          ],2279          "isUnique": false,2280          "concurrently": false,2281          "method": "btree",2282          "with": {}2283        },2284        "viewings_owner_idx": {2285          "name": "viewings_owner_idx",2286          "columns": [2287            {2288              "expression": "owner_id",2289              "isExpression": false,2290              "asc": true,2291              "nulls": "last"2292            }2293          ],2294          "isUnique": false,2295          "concurrently": false,2296          "method": "btree",2297          "with": {}2298        }2299      },2300      "foreignKeys": {2301        "viewing_requests_listing_id_listings_id_fk": {2302          "name": "viewing_requests_listing_id_listings_id_fk",2303          "tableFrom": "viewing_requests",2304          "tableTo": "listings",2305          "columnsFrom": [2306            "listing_id"2307          ],2308          "columnsTo": [2309            "id"2310          ],2311          "onDelete": "cascade",2312          "onUpdate": "no action"2313        },2314        "viewing_requests_inquiry_id_inquiries_id_fk": {2315          "name": "viewing_requests_inquiry_id_inquiries_id_fk",2316          "tableFrom": "viewing_requests",2317          "tableTo": "inquiries",2318          "columnsFrom": [2319            "inquiry_id"2320          ],2321          "columnsTo": [2322            "id"2323          ],2324          "onDelete": "set null",2325          "onUpdate": "no action"2326        },2327        "viewing_requests_requester_id_users_id_fk": {2328          "name": "viewing_requests_requester_id_users_id_fk",2329          "tableFrom": "viewing_requests",2330          "tableTo": "users",2331          "columnsFrom": [2332            "requester_id"2333          ],2334          "columnsTo": [2335            "id"2336          ],2337          "onDelete": "cascade",2338          "onUpdate": "no action"2339        },2340        "viewing_requests_owner_id_users_id_fk": {2341          "name": "viewing_requests_owner_id_users_id_fk",2342          "tableFrom": "viewing_requests",2343          "tableTo": "users",2344          "columnsFrom": [2345            "owner_id"2346          ],2347          "columnsTo": [2348            "id"2349          ],2350          "onDelete": "cascade",2351          "onUpdate": "no action"2352        }2353      },2354      "compositePrimaryKeys": {},2355      "uniqueConstraints": {},2356      "policies": {},2357      "checkConstraints": {2358        "viewings_status_ck": {2359          "name": "viewings_status_ck",2360          "value": "\"viewing_requests\".\"status\" in ('REQUESTED','CONFIRMED','CANCELLED','DONE')"2361        }2362      },2363      "isRLSEnabled": false2364    }2365  },2366  "enums": {},2367  "schemas": {},2368  "sequences": {},2369  "roles": {},2370  "policies": {},2371  "views": {},2372  "_meta": {2373    "columns": {},2374    "schemas": {},2375    "tables": {}2376  }2377}