export type Json = | string | number | boolean | null | { [key: string]: Json | undefined } | Json[] export type Database = { public: { Tables: { analytics: { Row: { article_id: number created_at: string | null id: number views: number } Insert: { article_id: number created_at?: string | null id?: number views?: number } Update: { article_id?: number created_at?: string | null id?: number views?: number } Relationships: [ { foreignKeyName: "analytics_article_id_fkey" columns: ["article_id"] isOneToOne: false referencedRelation: "articles" referencedColumns: ["id"] }, ] } articles: { Row: { created_at: string | null id: number slug: string title: string | null } Insert: { created_at?: string | null id?: number slug: string title?: string | null } Update: { created_at?: string | null id?: number slug?: string title?: string | null } Relationships: [] } comments: { Row: { article_id: number content: string created_at: string | null id: number published: boolean | null user_id: number } Insert: { article_id: number content: string created_at?: string | null id?: number published?: boolean | null user_id: number } Update: { article_id?: number content?: string created_at?: string | null id?: number published?: boolean | null user_id?: number } Relationships: [ { foreignKeyName: "comments_article_id_fkey" columns: ["article_id"] isOneToOne: false referencedRelation: "articles" referencedColumns: ["id"] }, { foreignKeyName: "comments_user_id_fkey" columns: ["user_id"] isOneToOne: false referencedRelation: "users" referencedColumns: ["id"] }, ] } users: { Row: { created_at: string | null email: string id: number image: string | null name: string } Insert: { created_at?: string | null email: string id?: number image?: string | null name: string } Update: { created_at?: string | null email?: string id?: number image?: string | null name?: string } Relationships: [] } } Views: { [_ in never]: never } Functions: { increment_views: { Args: { param_slug: string param_title: string } Returns: undefined } total_views: { Args: Record Returns: number } } Enums: { [_ in never]: never } CompositeTypes: { [_ in never]: never } } } type PublicSchema = Database[Extract] export type Tables< PublicTableNameOrOptions extends | keyof (PublicSchema["Tables"] & PublicSchema["Views"]) | { schema: keyof Database }, TableName extends PublicTableNameOrOptions extends { schema: keyof Database } ? keyof (Database[PublicTableNameOrOptions["schema"]]["Tables"] & Database[PublicTableNameOrOptions["schema"]]["Views"]) : never = never, > = PublicTableNameOrOptions extends { schema: keyof Database } ? (Database[PublicTableNameOrOptions["schema"]]["Tables"] & Database[PublicTableNameOrOptions["schema"]]["Views"])[TableName] extends { Row: infer R } ? R : never : PublicTableNameOrOptions extends keyof (PublicSchema["Tables"] & PublicSchema["Views"]) ? (PublicSchema["Tables"] & PublicSchema["Views"])[PublicTableNameOrOptions] extends { Row: infer R } ? R : never : never export type TablesInsert< PublicTableNameOrOptions extends | keyof PublicSchema["Tables"] | { schema: keyof Database }, TableName extends PublicTableNameOrOptions extends { schema: keyof Database } ? keyof Database[PublicTableNameOrOptions["schema"]]["Tables"] : never = never, > = PublicTableNameOrOptions extends { schema: keyof Database } ? Database[PublicTableNameOrOptions["schema"]]["Tables"][TableName] extends { Insert: infer I } ? I : never : PublicTableNameOrOptions extends keyof PublicSchema["Tables"] ? PublicSchema["Tables"][PublicTableNameOrOptions] extends { Insert: infer I } ? I : never : never export type TablesUpdate< PublicTableNameOrOptions extends | keyof PublicSchema["Tables"] | { schema: keyof Database }, TableName extends PublicTableNameOrOptions extends { schema: keyof Database } ? keyof Database[PublicTableNameOrOptions["schema"]]["Tables"] : never = never, > = PublicTableNameOrOptions extends { schema: keyof Database } ? Database[PublicTableNameOrOptions["schema"]]["Tables"][TableName] extends { Update: infer U } ? U : never : PublicTableNameOrOptions extends keyof PublicSchema["Tables"] ? PublicSchema["Tables"][PublicTableNameOrOptions] extends { Update: infer U } ? U : never : never export type Enums< PublicEnumNameOrOptions extends | keyof PublicSchema["Enums"] | { schema: keyof Database }, EnumName extends PublicEnumNameOrOptions extends { schema: keyof Database } ? keyof Database[PublicEnumNameOrOptions["schema"]]["Enums"] : never = never, > = PublicEnumNameOrOptions extends { schema: keyof Database } ? Database[PublicEnumNameOrOptions["schema"]]["Enums"][EnumName] : PublicEnumNameOrOptions extends keyof PublicSchema["Enums"] ? PublicSchema["Enums"][PublicEnumNameOrOptions] : never export type CompositeTypes< PublicCompositeTypeNameOrOptions extends | keyof PublicSchema["CompositeTypes"] | { schema: keyof Database }, CompositeTypeName extends PublicCompositeTypeNameOrOptions extends { schema: keyof Database } ? keyof Database[PublicCompositeTypeNameOrOptions["schema"]]["CompositeTypes"] : never = never, > = PublicCompositeTypeNameOrOptions extends { schema: keyof Database } ? Database[PublicCompositeTypeNameOrOptions["schema"]]["CompositeTypes"][CompositeTypeName] : PublicCompositeTypeNameOrOptions extends keyof PublicSchema["CompositeTypes"] ? PublicSchema["CompositeTypes"][PublicCompositeTypeNameOrOptions] : never