From c415e722933c1e1cbc8334666ed5f7bb909dbe8f Mon Sep 17 00:00:00 2001 From: Songkeys Date: Fri, 26 Jul 2024 16:01:33 +0800 Subject: [PATCH] feat: podcast corner player (#155) --- icons/mgc/back_2_cute_re.svg | 1 + icons/mgc/fast_forward_cute_re.svg | 1 + icons/mgc/forward_2_cute_re.svg | 1 + icons/mgc/pause_cute_re.svg | 1 + icons/mgc/play_cute_re.svg | 1 + icons/mgc/volume_cute_re.svg | 1 + icons/mgc/volume_off_cute_re.svg | 1 + package.json | 1 + pnpm-lock.yaml | 35 + src/hono.ts | 6657 +++++++++-------- src/renderer/src/atoms/corner-player.ts | 30 + src/renderer/src/atoms/player.ts | 149 + src/renderer/src/hono.ts | 3449 ++++++++- .../entry-column/list-item-template.tsx | 94 +- .../src/modules/feed-column/corner-player.tsx | 233 + src/renderer/src/pages/(main)/layout.tsx | 5 + 16 files changed, 7342 insertions(+), 3318 deletions(-) create mode 100644 icons/mgc/back_2_cute_re.svg create mode 100644 icons/mgc/fast_forward_cute_re.svg create mode 100644 icons/mgc/forward_2_cute_re.svg create mode 100644 icons/mgc/pause_cute_re.svg create mode 100644 icons/mgc/play_cute_re.svg create mode 100644 icons/mgc/volume_cute_re.svg create mode 100644 icons/mgc/volume_off_cute_re.svg create mode 100644 src/renderer/src/atoms/corner-player.ts create mode 100644 src/renderer/src/atoms/player.ts mode change 120000 => 100644 src/renderer/src/hono.ts create mode 100644 src/renderer/src/modules/feed-column/corner-player.tsx diff --git a/icons/mgc/back_2_cute_re.svg b/icons/mgc/back_2_cute_re.svg new file mode 100644 index 0000000000..26b6653639 --- /dev/null +++ b/icons/mgc/back_2_cute_re.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/mgc/fast_forward_cute_re.svg b/icons/mgc/fast_forward_cute_re.svg new file mode 100644 index 0000000000..ab1c3d6e79 --- /dev/null +++ b/icons/mgc/fast_forward_cute_re.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/mgc/forward_2_cute_re.svg b/icons/mgc/forward_2_cute_re.svg new file mode 100644 index 0000000000..e13322984a --- /dev/null +++ b/icons/mgc/forward_2_cute_re.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/mgc/pause_cute_re.svg b/icons/mgc/pause_cute_re.svg new file mode 100644 index 0000000000..aadf00b912 --- /dev/null +++ b/icons/mgc/pause_cute_re.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/mgc/play_cute_re.svg b/icons/mgc/play_cute_re.svg new file mode 100644 index 0000000000..028e31f2b9 --- /dev/null +++ b/icons/mgc/play_cute_re.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/mgc/volume_cute_re.svg b/icons/mgc/volume_cute_re.svg new file mode 100644 index 0000000000..4de416df12 --- /dev/null +++ b/icons/mgc/volume_cute_re.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/mgc/volume_off_cute_re.svg b/icons/mgc/volume_off_cute_re.svg new file mode 100644 index 0000000000..b5575b53a2 --- /dev/null +++ b/icons/mgc/volume_off_cute_re.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/package.json b/package.json index 6b39786a8d..a29011780f 100644 --- a/package.json +++ b/package.json @@ -50,6 +50,7 @@ "@radix-ui/react-radio-group": "1.2.0", "@radix-ui/react-scroll-area": "1.1.0", "@radix-ui/react-select": "2.1.1", + "@radix-ui/react-slider": "^1.2.0", "@radix-ui/react-slot": "1.1.0", "@radix-ui/react-switch": "1.1.0", "@radix-ui/react-tabs": "1.1.0", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index cfee12b48e..d9a79e2f68 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -79,6 +79,9 @@ importers: '@radix-ui/react-select': specifier: 2.1.1 version: 2.1.1(@types/react-dom@18.3.0)(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-slider': + specifier: ^1.2.0 + version: 1.2.0(@types/react-dom@18.3.0)(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@radix-ui/react-slot': specifier: 1.1.0 version: 1.1.0(@types/react@18.3.3)(react@18.3.1) @@ -1956,6 +1959,19 @@ packages: '@types/react-dom': optional: true + '@radix-ui/react-slider@1.2.0': + resolution: {integrity: sha512-dAHCDA4/ySXROEPaRtaMV5WHL8+JB/DbtyTbJjYkY0RXmKMO2Ln8DFZhywG5/mVQ4WqHDBc8smc14yPXPqZHYA==} + peerDependencies: + '@types/react': '*' + '@types/react-dom': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + '@types/react-dom': + optional: true + '@radix-ui/react-slot@1.0.2': resolution: {integrity: sha512-YeTpuq4deV+6DusvVUW4ivBgnkHwECUu0BiN43L5UCDFgdhsRUWAghhTF5MbvNTPzmiFOx90asDSUjWuCNapwg==} peerDependencies: @@ -8838,6 +8854,25 @@ snapshots: '@types/react': 18.3.3 '@types/react-dom': 18.3.0 + '@radix-ui/react-slider@1.2.0(@types/react-dom@18.3.0)(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + dependencies: + '@radix-ui/number': 1.1.0 + '@radix-ui/primitive': 1.1.0 + '@radix-ui/react-collection': 1.1.0(@types/react-dom@18.3.0)(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-compose-refs': 1.1.0(@types/react@18.3.3)(react@18.3.1) + '@radix-ui/react-context': 1.1.0(@types/react@18.3.3)(react@18.3.1) + '@radix-ui/react-direction': 1.1.0(@types/react@18.3.3)(react@18.3.1) + '@radix-ui/react-primitive': 2.0.0(@types/react-dom@18.3.0)(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-use-controllable-state': 1.1.0(@types/react@18.3.3)(react@18.3.1) + '@radix-ui/react-use-layout-effect': 1.1.0(@types/react@18.3.3)(react@18.3.1) + '@radix-ui/react-use-previous': 1.1.0(@types/react@18.3.3)(react@18.3.1) + '@radix-ui/react-use-size': 1.1.0(@types/react@18.3.3)(react@18.3.1) + react: 18.3.1 + react-dom: 18.3.1(react@18.3.1) + optionalDependencies: + '@types/react': 18.3.3 + '@types/react-dom': 18.3.0 + '@radix-ui/react-slot@1.0.2(@types/react@18.3.3)(react@18.3.1)': dependencies: '@babel/runtime': 7.24.4 diff --git a/src/hono.ts b/src/hono.ts index 7e7337badd..44c1d801b2 100644 --- a/src/hono.ts +++ b/src/hono.ts @@ -1,3409 +1,3448 @@ -import type * as drizzle_orm from "drizzle-orm" -import type { InferInsertModel } from "drizzle-orm" -import type * as drizzle_orm_pg_core from "drizzle-orm/pg-core" -import type * as hono from "hono" -import type * as hono_hono_base from "hono/hono-base" -import type * as hono_types from "hono/types" -import type * as hono_utils_http_status from "hono/utils/http-status" -import type * as zod from "zod" -import type { z } from "zod" +import * as hono_hono_base from 'hono/hono-base'; +import * as hono_utils_http_status from 'hono/utils/http-status'; +import * as hono from 'hono'; +import * as hono_types from 'hono/types'; +import * as drizzle_orm from 'drizzle-orm'; +import { InferInsertModel } from 'drizzle-orm'; +import * as drizzle_orm_pg_core from 'drizzle-orm/pg-core'; +import * as zod from 'zod'; +import { z } from 'zod'; declare const actions: drizzle_orm_pg_core.PgTableWithColumns<{ - name: "actions" - schema: undefined - columns: { - userId: drizzle_orm_pg_core.PgColumn<{ - name: "user_id" - tableName: "actions" - dataType: "string" - columnType: "PgText" - data: string - driverParam: string - notNull: true - hasDefault: false - isPrimaryKey: true - isAutoincrement: false - hasRuntimeDefault: false - enumValues: [string, ...string[]] - baseColumn: never - generated: undefined - }, {}, {}> - rules: drizzle_orm_pg_core.PgColumn<{ - name: "rules" - tableName: "actions" - dataType: "array" - columnType: "PgArray" - data: unknown[] - driverParam: string | unknown[] - notNull: false - hasDefault: false - isPrimaryKey: false - isAutoincrement: false - hasRuntimeDefault: false - enumValues: undefined - baseColumn: drizzle_orm.Column<{ - name: "rules" - tableName: "actions" - dataType: "json" - columnType: "PgJsonb" - data: unknown - driverParam: unknown - notNull: false - hasDefault: false - isPrimaryKey: false - isAutoincrement: false - hasRuntimeDefault: false - enumValues: undefined - baseColumn: never - generated: undefined - }, object, object> - generated: undefined - }, {}, {}> - } - dialect: "pg" -}> -declare const languageSchema: z.ZodEnum<["en", "ja", "zh-CN", "zh-TW"]> + name: "actions"; + schema: undefined; + columns: { + userId: drizzle_orm_pg_core.PgColumn<{ + name: "user_id"; + tableName: "actions"; + dataType: "string"; + columnType: "PgText"; + data: string; + driverParam: string; + notNull: true; + hasDefault: false; + isPrimaryKey: true; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: [string, ...string[]]; + baseColumn: never; + generated: undefined; + }, {}, {}>; + rules: drizzle_orm_pg_core.PgColumn<{ + name: "rules"; + tableName: "actions"; + dataType: "array"; + columnType: "PgArray"; + data: unknown[]; + driverParam: string | unknown[]; + notNull: false; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: undefined; + baseColumn: drizzle_orm.Column<{ + name: "rules"; + tableName: "actions"; + dataType: "json"; + columnType: "PgJsonb"; + data: unknown; + driverParam: unknown; + notNull: false; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: undefined; + baseColumn: never; + generated: undefined; + }, object, object>; + generated: undefined; + }, {}, {}>; + }; + dialect: "pg"; +}>; +declare const languageSchema: z.ZodEnum<["en", "ja", "zh-CN", "zh-TW"]>; declare const actionsItemOpenAPISchema: z.ZodObject<{ - name: z.ZodString - condition: z.ZodArray - operator: z.ZodEnum<["contains", "not_contains", "eq", "not_eq", "gt", "lt", "regex"]> - value: z.ZodString - }, "strip", z.ZodTypeAny, { - value: string - field: "title" | "view" | "site_url" | "feed_url" - operator: "contains" | "not_contains" | "eq" | "not_eq" | "gt" | "lt" | "regex" - }, { - value: string - field: "title" | "view" | "site_url" | "feed_url" - operator: "contains" | "not_contains" | "eq" | "not_eq" | "gt" | "lt" | "regex" - }>, "many"> - result: z.ZodObject<{ - translation: z.ZodOptional> - summary: z.ZodOptional - rewriteRules: z.ZodOptional, "many">> - blockRules: z.ZodOptional - operator: z.ZodEnum<["contains", "not_contains", "eq", "not_eq", "gt", "lt", "regex"]> - value: z.ZodUnion<[z.ZodString, z.ZodNumber]> - }, "strip", z.ZodTypeAny, { - value: string | number - field: "title" | "content" | "url" | "all" | "author" | "order" - operator: "contains" | "not_contains" | "eq" | "not_eq" | "gt" | "lt" | "regex" - }, { - value: string | number - field: "title" | "content" | "url" | "all" | "author" | "order" - operator: "contains" | "not_contains" | "eq" | "not_eq" | "gt" | "lt" | "regex" - }>, "many">> - }, "strip", z.ZodTypeAny, { - summary?: boolean | undefined - translation?: "en" | "ja" | "zh-CN" | "zh-TW" | undefined - rewriteRules?: { - from: string - to: string - }[] | undefined - blockRules?: { - value: string | number - field: "title" | "content" | "url" | "all" | "author" | "order" - operator: "contains" | "not_contains" | "eq" | "not_eq" | "gt" | "lt" | "regex" - }[] | undefined - }, { - summary?: boolean | undefined - translation?: "en" | "ja" | "zh-CN" | "zh-TW" | undefined - rewriteRules?: { - from: string - to: string - }[] | undefined - blockRules?: { - value: string | number - field: "title" | "content" | "url" | "all" | "author" | "order" - operator: "contains" | "not_contains" | "eq" | "not_eq" | "gt" | "lt" | "regex" - }[] | undefined - }> -}, "strip", z.ZodTypeAny, { - name: string - condition: { - value: string - field: "title" | "view" | "site_url" | "feed_url" - operator: "contains" | "not_contains" | "eq" | "not_eq" | "gt" | "lt" | "regex" - }[] - result: { - summary?: boolean | undefined - translation?: "en" | "ja" | "zh-CN" | "zh-TW" | undefined - rewriteRules?: { - from: string - to: string - }[] | undefined - blockRules?: { - value: string | number - field: "title" | "content" | "url" | "all" | "author" | "order" - operator: "contains" | "not_contains" | "eq" | "not_eq" | "gt" | "lt" | "regex" - }[] | undefined - } -}, { - name: string - condition: { - value: string - field: "title" | "view" | "site_url" | "feed_url" - operator: "contains" | "not_contains" | "eq" | "not_eq" | "gt" | "lt" | "regex" - }[] - result: { - summary?: boolean | undefined - translation?: "en" | "ja" | "zh-CN" | "zh-TW" | undefined - rewriteRules?: { - from: string - to: string - }[] | undefined - blockRules?: { - value: string | number - field: "title" | "content" | "url" | "all" | "author" | "order" - operator: "contains" | "not_contains" | "eq" | "not_eq" | "gt" | "lt" | "regex" - }[] | undefined - } -}> -declare const actionsOpenAPISchema: z.ZodObject | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | any | null)[] | null)[] | null)[] | null)[] | null)[] | null)[] | null)[] | null)[] | null)[] | null)[] | null)[] | null, z.ZodTypeDef, string | number | boolean | Record | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | any | null)[] | null)[] | null)[] | null)[] | null)[] | null)[] | null)[] | null)[] | null)[] | null)[] | null)[] | null>, "many">> -}, "rules">, { - rules: z.ZodNullable - operator: z.ZodEnum<["contains", "not_contains", "eq", "not_eq", "gt", "lt", "regex"]> - value: z.ZodString + field: z.ZodEnum<["view", "title", "site_url", "feed_url"]>; + operator: z.ZodEnum<["contains", "not_contains", "eq", "not_eq", "gt", "lt", "regex"]>; + value: z.ZodString; }, "strip", z.ZodTypeAny, { - value: string - field: "title" | "view" | "site_url" | "feed_url" - operator: "contains" | "not_contains" | "eq" | "not_eq" | "gt" | "lt" | "regex" + value: string; + field: "title" | "view" | "site_url" | "feed_url"; + operator: "contains" | "not_contains" | "eq" | "not_eq" | "gt" | "lt" | "regex"; }, { - value: string - field: "title" | "view" | "site_url" | "feed_url" - operator: "contains" | "not_contains" | "eq" | "not_eq" | "gt" | "lt" | "regex" - }>, "many"> + value: string; + field: "title" | "view" | "site_url" | "feed_url"; + operator: "contains" | "not_contains" | "eq" | "not_eq" | "gt" | "lt" | "regex"; + }>, "many">; result: z.ZodObject<{ - translation: z.ZodOptional> - summary: z.ZodOptional - rewriteRules: z.ZodOptional, "many">> - blockRules: z.ZodOptional - operator: z.ZodEnum<["contains", "not_contains", "eq", "not_eq", "gt", "lt", "regex"]> - value: z.ZodUnion<[z.ZodString, z.ZodNumber]> - }, "strip", z.ZodTypeAny, { - value: string | number - field: "title" | "content" | "url" | "all" | "author" | "order" - operator: "contains" | "not_contains" | "eq" | "not_eq" | "gt" | "lt" | "regex" - }, { - value: string | number - field: "title" | "content" | "url" | "all" | "author" | "order" - operator: "contains" | "not_contains" | "eq" | "not_eq" | "gt" | "lt" | "regex" - }>, "many">> + translation: z.ZodOptional>; + summary: z.ZodOptional; + rewriteRules: z.ZodOptional, "many">>; + blockRules: z.ZodOptional; + operator: z.ZodEnum<["contains", "not_contains", "eq", "not_eq", "gt", "lt", "regex"]>; + value: z.ZodUnion<[z.ZodString, z.ZodNumber]>; + }, "strip", z.ZodTypeAny, { + value: string | number; + field: "title" | "content" | "url" | "all" | "author" | "order"; + operator: "contains" | "not_contains" | "eq" | "not_eq" | "gt" | "lt" | "regex"; + }, { + value: string | number; + field: "title" | "content" | "url" | "all" | "author" | "order"; + operator: "contains" | "not_contains" | "eq" | "not_eq" | "gt" | "lt" | "regex"; + }>, "many">>; }, "strip", z.ZodTypeAny, { - summary?: boolean | undefined - translation?: "en" | "ja" | "zh-CN" | "zh-TW" | undefined - rewriteRules?: { - from: string - to: string - }[] | undefined - blockRules?: { - value: string | number - field: "title" | "content" | "url" | "all" | "author" | "order" - operator: "contains" | "not_contains" | "eq" | "not_eq" | "gt" | "lt" | "regex" - }[] | undefined + summary?: boolean | undefined; + translation?: "en" | "ja" | "zh-CN" | "zh-TW" | undefined; + rewriteRules?: { + from: string; + to: string; + }[] | undefined; + blockRules?: { + value: string | number; + field: "title" | "content" | "url" | "all" | "author" | "order"; + operator: "contains" | "not_contains" | "eq" | "not_eq" | "gt" | "lt" | "regex"; + }[] | undefined; }, { - summary?: boolean | undefined - translation?: "en" | "ja" | "zh-CN" | "zh-TW" | undefined - rewriteRules?: { - from: string - to: string - }[] | undefined - blockRules?: { - value: string | number - field: "title" | "content" | "url" | "all" | "author" | "order" - operator: "contains" | "not_contains" | "eq" | "not_eq" | "gt" | "lt" | "regex" - }[] | undefined - }> - }, "strip", z.ZodTypeAny, { - name: string + summary?: boolean | undefined; + translation?: "en" | "ja" | "zh-CN" | "zh-TW" | undefined; + rewriteRules?: { + from: string; + to: string; + }[] | undefined; + blockRules?: { + value: string | number; + field: "title" | "content" | "url" | "all" | "author" | "order"; + operator: "contains" | "not_contains" | "eq" | "not_eq" | "gt" | "lt" | "regex"; + }[] | undefined; + }>; +}, "strip", z.ZodTypeAny, { + name: string; condition: { - value: string - field: "title" | "view" | "site_url" | "feed_url" - operator: "contains" | "not_contains" | "eq" | "not_eq" | "gt" | "lt" | "regex" - }[] + value: string; + field: "title" | "view" | "site_url" | "feed_url"; + operator: "contains" | "not_contains" | "eq" | "not_eq" | "gt" | "lt" | "regex"; + }[]; result: { - summary?: boolean | undefined - translation?: "en" | "ja" | "zh-CN" | "zh-TW" | undefined - rewriteRules?: { - from: string - to: string - }[] | undefined - blockRules?: { - value: string | number - field: "title" | "content" | "url" | "all" | "author" | "order" - operator: "contains" | "not_contains" | "eq" | "not_eq" | "gt" | "lt" | "regex" - }[] | undefined - } - }, { - name: string + summary?: boolean | undefined; + translation?: "en" | "ja" | "zh-CN" | "zh-TW" | undefined; + rewriteRules?: { + from: string; + to: string; + }[] | undefined; + blockRules?: { + value: string | number; + field: "title" | "content" | "url" | "all" | "author" | "order"; + operator: "contains" | "not_contains" | "eq" | "not_eq" | "gt" | "lt" | "regex"; + }[] | undefined; + }; +}, { + name: string; condition: { - value: string - field: "title" | "view" | "site_url" | "feed_url" - operator: "contains" | "not_contains" | "eq" | "not_eq" | "gt" | "lt" | "regex" - }[] + value: string; + field: "title" | "view" | "site_url" | "feed_url"; + operator: "contains" | "not_contains" | "eq" | "not_eq" | "gt" | "lt" | "regex"; + }[]; result: { - summary?: boolean | undefined - translation?: "en" | "ja" | "zh-CN" | "zh-TW" | undefined - rewriteRules?: { - from: string - to: string - }[] | undefined - blockRules?: { - value: string | number - field: "title" | "content" | "url" | "all" | "author" | "order" - operator: "contains" | "not_contains" | "eq" | "not_eq" | "gt" | "lt" | "regex" - }[] | undefined - } - }>, "many">>> + summary?: boolean | undefined; + translation?: "en" | "ja" | "zh-CN" | "zh-TW" | undefined; + rewriteRules?: { + from: string; + to: string; + }[] | undefined; + blockRules?: { + value: string | number; + field: "title" | "content" | "url" | "all" | "author" | "order"; + operator: "contains" | "not_contains" | "eq" | "not_eq" | "gt" | "lt" | "regex"; + }[] | undefined; + }; +}>; +declare const actionsOpenAPISchema: z.ZodObject, "many">>; +}, "rules">, { + rules: z.ZodNullable; + operator: z.ZodEnum<["contains", "not_contains", "eq", "not_eq", "gt", "lt", "regex"]>; + value: z.ZodString; + }, "strip", z.ZodTypeAny, { + value: string; + field: "title" | "view" | "site_url" | "feed_url"; + operator: "contains" | "not_contains" | "eq" | "not_eq" | "gt" | "lt" | "regex"; + }, { + value: string; + field: "title" | "view" | "site_url" | "feed_url"; + operator: "contains" | "not_contains" | "eq" | "not_eq" | "gt" | "lt" | "regex"; + }>, "many">; + result: z.ZodObject<{ + translation: z.ZodOptional>; + summary: z.ZodOptional; + rewriteRules: z.ZodOptional, "many">>; + blockRules: z.ZodOptional; + operator: z.ZodEnum<["contains", "not_contains", "eq", "not_eq", "gt", "lt", "regex"]>; + value: z.ZodUnion<[z.ZodString, z.ZodNumber]>; + }, "strip", z.ZodTypeAny, { + value: string | number; + field: "title" | "content" | "url" | "all" | "author" | "order"; + operator: "contains" | "not_contains" | "eq" | "not_eq" | "gt" | "lt" | "regex"; + }, { + value: string | number; + field: "title" | "content" | "url" | "all" | "author" | "order"; + operator: "contains" | "not_contains" | "eq" | "not_eq" | "gt" | "lt" | "regex"; + }>, "many">>; + }, "strip", z.ZodTypeAny, { + summary?: boolean | undefined; + translation?: "en" | "ja" | "zh-CN" | "zh-TW" | undefined; + rewriteRules?: { + from: string; + to: string; + }[] | undefined; + blockRules?: { + value: string | number; + field: "title" | "content" | "url" | "all" | "author" | "order"; + operator: "contains" | "not_contains" | "eq" | "not_eq" | "gt" | "lt" | "regex"; + }[] | undefined; + }, { + summary?: boolean | undefined; + translation?: "en" | "ja" | "zh-CN" | "zh-TW" | undefined; + rewriteRules?: { + from: string; + to: string; + }[] | undefined; + blockRules?: { + value: string | number; + field: "title" | "content" | "url" | "all" | "author" | "order"; + operator: "contains" | "not_contains" | "eq" | "not_eq" | "gt" | "lt" | "regex"; + }[] | undefined; + }>; + }, "strip", z.ZodTypeAny, { + name: string; + condition: { + value: string; + field: "title" | "view" | "site_url" | "feed_url"; + operator: "contains" | "not_contains" | "eq" | "not_eq" | "gt" | "lt" | "regex"; + }[]; + result: { + summary?: boolean | undefined; + translation?: "en" | "ja" | "zh-CN" | "zh-TW" | undefined; + rewriteRules?: { + from: string; + to: string; + }[] | undefined; + blockRules?: { + value: string | number; + field: "title" | "content" | "url" | "all" | "author" | "order"; + operator: "contains" | "not_contains" | "eq" | "not_eq" | "gt" | "lt" | "regex"; + }[] | undefined; + }; + }, { + name: string; + condition: { + value: string; + field: "title" | "view" | "site_url" | "feed_url"; + operator: "contains" | "not_contains" | "eq" | "not_eq" | "gt" | "lt" | "regex"; + }[]; + result: { + summary?: boolean | undefined; + translation?: "en" | "ja" | "zh-CN" | "zh-TW" | undefined; + rewriteRules?: { + from: string; + to: string; + }[] | undefined; + blockRules?: { + value: string | number; + field: "title" | "content" | "url" | "all" | "author" | "order"; + operator: "contains" | "not_contains" | "eq" | "not_eq" | "gt" | "lt" | "regex"; + }[] | undefined; + }; + }>, "many">>>; }>, "strip", z.ZodTypeAny, { - userId: string - rules?: { - name: string - condition: { - value: string - field: "title" | "view" | "site_url" | "feed_url" - operator: "contains" | "not_contains" | "eq" | "not_eq" | "gt" | "lt" | "regex" - }[] - result: { - summary?: boolean | undefined - translation?: "en" | "ja" | "zh-CN" | "zh-TW" | undefined - rewriteRules?: { - from: string - to: string - }[] | undefined - blockRules?: { - value: string | number - field: "title" | "content" | "url" | "all" | "author" | "order" - operator: "contains" | "not_contains" | "eq" | "not_eq" | "gt" | "lt" | "regex" - }[] | undefined - } - }[] | null | undefined + userId: string; + rules?: { + name: string; + condition: { + value: string; + field: "title" | "view" | "site_url" | "feed_url"; + operator: "contains" | "not_contains" | "eq" | "not_eq" | "gt" | "lt" | "regex"; + }[]; + result: { + summary?: boolean | undefined; + translation?: "en" | "ja" | "zh-CN" | "zh-TW" | undefined; + rewriteRules?: { + from: string; + to: string; + }[] | undefined; + blockRules?: { + value: string | number; + field: "title" | "content" | "url" | "all" | "author" | "order"; + operator: "contains" | "not_contains" | "eq" | "not_eq" | "gt" | "lt" | "regex"; + }[] | undefined; + }; + }[] | null | undefined; }, { - userId: string - rules?: { - name: string - condition: { - value: string - field: "title" | "view" | "site_url" | "feed_url" - operator: "contains" | "not_contains" | "eq" | "not_eq" | "gt" | "lt" | "regex" - }[] - result: { - summary?: boolean | undefined - translation?: "en" | "ja" | "zh-CN" | "zh-TW" | undefined - rewriteRules?: { - from: string - to: string - }[] | undefined - blockRules?: { - value: string | number - field: "title" | "content" | "url" | "all" | "author" | "order" - operator: "contains" | "not_contains" | "eq" | "not_eq" | "gt" | "lt" | "regex" - }[] | undefined - } - }[] | null | undefined -}> + userId: string; + rules?: { + name: string; + condition: { + value: string; + field: "title" | "view" | "site_url" | "feed_url"; + operator: "contains" | "not_contains" | "eq" | "not_eq" | "gt" | "lt" | "regex"; + }[]; + result: { + summary?: boolean | undefined; + translation?: "en" | "ja" | "zh-CN" | "zh-TW" | undefined; + rewriteRules?: { + from: string; + to: string; + }[] | undefined; + blockRules?: { + value: string | number; + field: "title" | "content" | "url" | "all" | "author" | "order"; + operator: "contains" | "not_contains" | "eq" | "not_eq" | "gt" | "lt" | "regex"; + }[] | undefined; + }; + }[] | null | undefined; +}>; declare const actionsRelations: drizzle_orm.Relations<"actions", { - users: drizzle_orm.One<"user", true> -}> -type ActionsModel = z.infer -type SettingsModel = Exclude["result"], undefined> + users: drizzle_orm.One<"user", true>; +}>; +type ActionsModel = z.infer; +type SettingsModel = Exclude["result"], undefined>; declare const collections: drizzle_orm_pg_core.PgTableWithColumns<{ - name: "collections" - schema: undefined - columns: { - userId: drizzle_orm_pg_core.PgColumn<{ - name: "user_id" - tableName: "collections" - dataType: "string" - columnType: "PgText" - data: string - driverParam: string - notNull: true - hasDefault: false - isPrimaryKey: false - isAutoincrement: false - hasRuntimeDefault: false - enumValues: [string, ...string[]] - baseColumn: never - generated: undefined - }, {}, {}> - feedId: drizzle_orm_pg_core.PgColumn<{ - name: "feedId" - tableName: "collections" - dataType: "string" - columnType: "PgText" - data: string - driverParam: string - notNull: true - hasDefault: false - isPrimaryKey: false - isAutoincrement: false - hasRuntimeDefault: false - enumValues: [string, ...string[]] - baseColumn: never - generated: undefined - }, {}, {}> - entryId: drizzle_orm_pg_core.PgColumn<{ - name: "entry_id" - tableName: "collections" - dataType: "string" - columnType: "PgText" - data: string - driverParam: string - notNull: true - hasDefault: false - isPrimaryKey: false - isAutoincrement: false - hasRuntimeDefault: false - enumValues: [string, ...string[]] - baseColumn: never - generated: undefined - }, {}, {}> - createdAt: drizzle_orm_pg_core.PgColumn<{ - name: "created_at" - tableName: "collections" - dataType: "date" - columnType: "PgTimestamp" - data: Date - driverParam: string - notNull: true - hasDefault: true - isPrimaryKey: false - isAutoincrement: false - hasRuntimeDefault: false - enumValues: undefined - baseColumn: never - generated: undefined - }, {}, {}> - view: drizzle_orm_pg_core.PgColumn<{ - name: "view" - tableName: "collections" - dataType: "number" - columnType: "PgSmallInt" - data: number - driverParam: string | number - notNull: true - hasDefault: false - isPrimaryKey: false - isAutoincrement: false - hasRuntimeDefault: false - enumValues: undefined - baseColumn: never - generated: undefined - }, {}, {}> - } - dialect: "pg" -}> + name: "collections"; + schema: undefined; + columns: { + userId: drizzle_orm_pg_core.PgColumn<{ + name: "user_id"; + tableName: "collections"; + dataType: "string"; + columnType: "PgText"; + data: string; + driverParam: string; + notNull: true; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: [string, ...string[]]; + baseColumn: never; + generated: undefined; + }, {}, {}>; + feedId: drizzle_orm_pg_core.PgColumn<{ + name: "feedId"; + tableName: "collections"; + dataType: "string"; + columnType: "PgText"; + data: string; + driverParam: string; + notNull: true; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: [string, ...string[]]; + baseColumn: never; + generated: undefined; + }, {}, {}>; + entryId: drizzle_orm_pg_core.PgColumn<{ + name: "entry_id"; + tableName: "collections"; + dataType: "string"; + columnType: "PgText"; + data: string; + driverParam: string; + notNull: true; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: [string, ...string[]]; + baseColumn: never; + generated: undefined; + }, {}, {}>; + createdAt: drizzle_orm_pg_core.PgColumn<{ + name: "created_at"; + tableName: "collections"; + dataType: "date"; + columnType: "PgTimestamp"; + data: Date; + driverParam: string; + notNull: true; + hasDefault: true; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: undefined; + baseColumn: never; + generated: undefined; + }, {}, {}>; + view: drizzle_orm_pg_core.PgColumn<{ + name: "view"; + tableName: "collections"; + dataType: "number"; + columnType: "PgSmallInt"; + data: number; + driverParam: string | number; + notNull: true; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: undefined; + baseColumn: never; + generated: undefined; + }, {}, {}>; + }; + dialect: "pg"; +}>; declare const collectionsOpenAPISchema: zod.ZodObject<{ - userId: zod.ZodString - feedId: zod.ZodString - entryId: zod.ZodString - createdAt: zod.ZodString - view: zod.ZodNumber + userId: zod.ZodString; + feedId: zod.ZodString; + entryId: zod.ZodString; + createdAt: zod.ZodString; + view: zod.ZodNumber; }, zod.UnknownKeysParam, zod.ZodTypeAny, { - view: number - userId: string - createdAt: string - feedId: string - entryId: string + view: number; + userId: string; + createdAt: string; + feedId: string; + entryId: string; }, { - view: number - userId: string - createdAt: string - feedId: string - entryId: string -}> + view: number; + userId: string; + createdAt: string; + feedId: string; + entryId: string; +}>; declare const collectionsRelations: drizzle_orm.Relations<"collections", { - users: drizzle_orm.One<"user", true> - entries: drizzle_orm.One<"entries", true> - feeds: drizzle_orm.One<"feeds", true> -}> + users: drizzle_orm.One<"user", true>; + entries: drizzle_orm.One<"entries", true>; + feeds: drizzle_orm.One<"feeds", true>; +}>; type MediaModel = { - url: string - type: "photo" | "video" - preview_image_url?: string -} + url: string; + type: "photo" | "video"; + preview_image_url?: string; +}; type AttachmentsModel = { - url: string - duration_in_seconds?: number - mime_type?: string - size_in_bytes?: number - title?: string -} + url: string; + duration_in_seconds?: number; + mime_type?: string; + size_in_bytes?: number; + title?: string; +}; declare const entries: drizzle_orm_pg_core.PgTableWithColumns<{ - name: "entries" - schema: undefined - columns: { - id: drizzle_orm_pg_core.PgColumn<{ - name: "id" - tableName: "entries" - dataType: "string" - columnType: "PgText" - data: string - driverParam: string - notNull: true - hasDefault: true - isPrimaryKey: true - isAutoincrement: false - hasRuntimeDefault: true - enumValues: [string, ...string[]] - baseColumn: never - generated: undefined - }, {}, {}> - feedId: drizzle_orm_pg_core.PgColumn<{ - name: "feed_id" - tableName: "entries" - dataType: "string" - columnType: "PgText" - data: string - driverParam: string - notNull: true - hasDefault: false - isPrimaryKey: false - isAutoincrement: false - hasRuntimeDefault: false - enumValues: [string, ...string[]] - baseColumn: never - generated: undefined - }, {}, {}> - title: drizzle_orm_pg_core.PgColumn<{ - name: "title" - tableName: "entries" - dataType: "string" - columnType: "PgText" - data: string - driverParam: string - notNull: false - hasDefault: false - isPrimaryKey: false - isAutoincrement: false - hasRuntimeDefault: false - enumValues: [string, ...string[]] - baseColumn: never - generated: undefined - }, {}, {}> - url: drizzle_orm_pg_core.PgColumn<{ - name: "url" - tableName: "entries" - dataType: "string" - columnType: "PgText" - data: string - driverParam: string - notNull: false - hasDefault: false - isPrimaryKey: false - isAutoincrement: false - hasRuntimeDefault: false - enumValues: [string, ...string[]] - baseColumn: never - generated: undefined - }, {}, {}> - content: drizzle_orm_pg_core.PgColumn<{ - name: "content" - tableName: "entries" - dataType: "string" - columnType: "PgText" - data: string - driverParam: string - notNull: false - hasDefault: false - isPrimaryKey: false - isAutoincrement: false - hasRuntimeDefault: false - enumValues: [string, ...string[]] - baseColumn: never - generated: undefined - }, {}, {}> - description: drizzle_orm_pg_core.PgColumn<{ - name: "description" - tableName: "entries" - dataType: "string" - columnType: "PgText" - data: string - driverParam: string - notNull: false - hasDefault: false - isPrimaryKey: false - isAutoincrement: false - hasRuntimeDefault: false - enumValues: [string, ...string[]] - baseColumn: never - generated: undefined - }, {}, {}> - guid: drizzle_orm_pg_core.PgColumn<{ - name: "guid" - tableName: "entries" - dataType: "string" - columnType: "PgText" - data: string - driverParam: string - notNull: true - hasDefault: false - isPrimaryKey: false - isAutoincrement: false - hasRuntimeDefault: false - enumValues: [string, ...string[]] - baseColumn: never - generated: undefined - }, {}, {}> - author: drizzle_orm_pg_core.PgColumn<{ - name: "author" - tableName: "entries" - dataType: "string" - columnType: "PgText" - data: string - driverParam: string - notNull: false - hasDefault: false - isPrimaryKey: false - isAutoincrement: false - hasRuntimeDefault: false - enumValues: [string, ...string[]] - baseColumn: never - generated: undefined - }, {}, {}> - authorUrl: drizzle_orm_pg_core.PgColumn<{ - name: "author_url" - tableName: "entries" - dataType: "string" - columnType: "PgText" - data: string - driverParam: string - notNull: false - hasDefault: false - isPrimaryKey: false - isAutoincrement: false - hasRuntimeDefault: false - enumValues: [string, ...string[]] - baseColumn: never - generated: undefined - }, {}, {}> - authorAvatar: drizzle_orm_pg_core.PgColumn<{ - name: "author_avatar" - tableName: "entries" - dataType: "string" - columnType: "PgText" - data: string - driverParam: string - notNull: false - hasDefault: false - isPrimaryKey: false - isAutoincrement: false - hasRuntimeDefault: false - enumValues: [string, ...string[]] - baseColumn: never - generated: undefined - }, {}, {}> - changedAt: drizzle_orm_pg_core.PgColumn<{ - name: "changed_at" - tableName: "entries" - dataType: "date" - columnType: "PgTimestamp" - data: Date - driverParam: string - notNull: true - hasDefault: false - isPrimaryKey: false - isAutoincrement: false - hasRuntimeDefault: false - enumValues: undefined - baseColumn: never - generated: undefined - }, {}, {}> - publishedAt: drizzle_orm_pg_core.PgColumn<{ - name: "published_at" - tableName: "entries" - dataType: "date" - columnType: "PgTimestamp" - data: Date - driverParam: string - notNull: true - hasDefault: false - isPrimaryKey: false - isAutoincrement: false - hasRuntimeDefault: false - enumValues: undefined - baseColumn: never - generated: undefined - }, {}, {}> - media: drizzle_orm_pg_core.PgColumn<{ - name: "media" - tableName: "entries" - dataType: "array" - columnType: "PgArray" - data: unknown[] - driverParam: string | unknown[] - notNull: false - hasDefault: false - isPrimaryKey: false - isAutoincrement: false - hasRuntimeDefault: false - enumValues: undefined - baseColumn: drizzle_orm.Column<{ - name: "media" - tableName: "entries" - dataType: "json" - columnType: "PgJsonb" - data: unknown - driverParam: unknown - notNull: false - hasDefault: false - isPrimaryKey: false - isAutoincrement: false - hasRuntimeDefault: false - enumValues: undefined - baseColumn: never - generated: undefined - }, object, object> - generated: undefined - }, {}, {}> - categories: drizzle_orm_pg_core.PgColumn<{ - name: "categories" - tableName: "entries" - dataType: "array" - columnType: "PgArray" - data: string[] - driverParam: string | string[] - notNull: false - hasDefault: false - isPrimaryKey: false - isAutoincrement: false - hasRuntimeDefault: false - enumValues: [string, ...string[]] - baseColumn: drizzle_orm.Column<{ - name: "categories" - tableName: "entries" - dataType: "string" - columnType: "PgText" - data: string - driverParam: string - notNull: false - hasDefault: false - isPrimaryKey: false - isAutoincrement: false - hasRuntimeDefault: false - enumValues: [string, ...string[]] - baseColumn: never - generated: undefined - }, object, object> - generated: undefined - }, {}, {}> - attachments: drizzle_orm_pg_core.PgColumn<{ - name: "attachments" - tableName: "entries" - dataType: "array" - columnType: "PgArray" - data: unknown[] - driverParam: string | unknown[] - notNull: false - hasDefault: false - isPrimaryKey: false - isAutoincrement: false - hasRuntimeDefault: false - enumValues: undefined - baseColumn: drizzle_orm.Column<{ - name: "attachments" - tableName: "entries" - dataType: "json" - columnType: "PgJsonb" - data: unknown - driverParam: unknown - notNull: false - hasDefault: false - isPrimaryKey: false - isAutoincrement: false - hasRuntimeDefault: false - enumValues: undefined - baseColumn: never - generated: undefined - }, object, object> - generated: undefined - }, {}, {}> - } - dialect: "pg" -}> + name: "entries"; + schema: undefined; + columns: { + id: drizzle_orm_pg_core.PgColumn<{ + name: "id"; + tableName: "entries"; + dataType: "string"; + columnType: "PgText"; + data: string; + driverParam: string; + notNull: true; + hasDefault: true; + isPrimaryKey: true; + isAutoincrement: false; + hasRuntimeDefault: true; + enumValues: [string, ...string[]]; + baseColumn: never; + generated: undefined; + }, {}, {}>; + feedId: drizzle_orm_pg_core.PgColumn<{ + name: "feed_id"; + tableName: "entries"; + dataType: "string"; + columnType: "PgText"; + data: string; + driverParam: string; + notNull: true; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: [string, ...string[]]; + baseColumn: never; + generated: undefined; + }, {}, {}>; + title: drizzle_orm_pg_core.PgColumn<{ + name: "title"; + tableName: "entries"; + dataType: "string"; + columnType: "PgText"; + data: string; + driverParam: string; + notNull: false; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: [string, ...string[]]; + baseColumn: never; + generated: undefined; + }, {}, {}>; + url: drizzle_orm_pg_core.PgColumn<{ + name: "url"; + tableName: "entries"; + dataType: "string"; + columnType: "PgText"; + data: string; + driverParam: string; + notNull: false; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: [string, ...string[]]; + baseColumn: never; + generated: undefined; + }, {}, {}>; + content: drizzle_orm_pg_core.PgColumn<{ + name: "content"; + tableName: "entries"; + dataType: "string"; + columnType: "PgText"; + data: string; + driverParam: string; + notNull: false; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: [string, ...string[]]; + baseColumn: never; + generated: undefined; + }, {}, {}>; + description: drizzle_orm_pg_core.PgColumn<{ + name: "description"; + tableName: "entries"; + dataType: "string"; + columnType: "PgText"; + data: string; + driverParam: string; + notNull: false; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: [string, ...string[]]; + baseColumn: never; + generated: undefined; + }, {}, {}>; + guid: drizzle_orm_pg_core.PgColumn<{ + name: "guid"; + tableName: "entries"; + dataType: "string"; + columnType: "PgText"; + data: string; + driverParam: string; + notNull: true; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: [string, ...string[]]; + baseColumn: never; + generated: undefined; + }, {}, {}>; + author: drizzle_orm_pg_core.PgColumn<{ + name: "author"; + tableName: "entries"; + dataType: "string"; + columnType: "PgText"; + data: string; + driverParam: string; + notNull: false; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: [string, ...string[]]; + baseColumn: never; + generated: undefined; + }, {}, {}>; + authorUrl: drizzle_orm_pg_core.PgColumn<{ + name: "author_url"; + tableName: "entries"; + dataType: "string"; + columnType: "PgText"; + data: string; + driverParam: string; + notNull: false; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: [string, ...string[]]; + baseColumn: never; + generated: undefined; + }, {}, {}>; + authorAvatar: drizzle_orm_pg_core.PgColumn<{ + name: "author_avatar"; + tableName: "entries"; + dataType: "string"; + columnType: "PgText"; + data: string; + driverParam: string; + notNull: false; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: [string, ...string[]]; + baseColumn: never; + generated: undefined; + }, {}, {}>; + changedAt: drizzle_orm_pg_core.PgColumn<{ + name: "changed_at"; + tableName: "entries"; + dataType: "date"; + columnType: "PgTimestamp"; + data: Date; + driverParam: string; + notNull: true; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: undefined; + baseColumn: never; + generated: undefined; + }, {}, {}>; + publishedAt: drizzle_orm_pg_core.PgColumn<{ + name: "published_at"; + tableName: "entries"; + dataType: "date"; + columnType: "PgTimestamp"; + data: Date; + driverParam: string; + notNull: true; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: undefined; + baseColumn: never; + generated: undefined; + }, {}, {}>; + media: drizzle_orm_pg_core.PgColumn<{ + name: "media"; + tableName: "entries"; + dataType: "array"; + columnType: "PgArray"; + data: unknown[]; + driverParam: string | unknown[]; + notNull: false; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: undefined; + baseColumn: drizzle_orm.Column<{ + name: "media"; + tableName: "entries"; + dataType: "json"; + columnType: "PgJsonb"; + data: unknown; + driverParam: unknown; + notNull: false; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: undefined; + baseColumn: never; + generated: undefined; + }, object, object>; + generated: undefined; + }, {}, {}>; + categories: drizzle_orm_pg_core.PgColumn<{ + name: "categories"; + tableName: "entries"; + dataType: "array"; + columnType: "PgArray"; + data: string[]; + driverParam: string | string[]; + notNull: false; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: [string, ...string[]]; + baseColumn: drizzle_orm.Column<{ + name: "categories"; + tableName: "entries"; + dataType: "string"; + columnType: "PgText"; + data: string; + driverParam: string; + notNull: false; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: [string, ...string[]]; + baseColumn: never; + generated: undefined; + }, object, object>; + generated: undefined; + }, {}, {}>; + attachments: drizzle_orm_pg_core.PgColumn<{ + name: "attachments"; + tableName: "entries"; + dataType: "array"; + columnType: "PgArray"; + data: unknown[]; + driverParam: string | unknown[]; + notNull: false; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: undefined; + baseColumn: drizzle_orm.Column<{ + name: "attachments"; + tableName: "entries"; + dataType: "json"; + columnType: "PgJsonb"; + data: unknown; + driverParam: unknown; + notNull: false; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: undefined; + baseColumn: never; + generated: undefined; + }, object, object>; + generated: undefined; + }, {}, {}>; + }; + dialect: "pg"; +}>; declare const entriesOpenAPISchema: z.ZodObject - url: z.ZodNullable - content: z.ZodNullable - description: z.ZodNullable - guid: z.ZodString - author: z.ZodNullable - authorUrl: z.ZodNullable - authorAvatar: z.ZodNullable - changedAt: z.ZodString - publishedAt: z.ZodString - media: z.ZodNullable | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | any | null)[] | null)[] | null)[] | null)[] | null)[] | null)[] | null)[] | null)[] | null)[] | null)[] | null)[] | null, z.ZodTypeDef, string | number | boolean | Record | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | any | null)[] | null)[] | null)[] | null)[] | null)[] | null)[] | null)[] | null)[] | null)[] | null)[] | null)[] | null>, "many">> - categories: z.ZodNullable> - attachments: z.ZodNullable | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | any | null)[] | null)[] | null)[] | null)[] | null)[] | null)[] | null)[] | null)[] | null)[] | null)[] | null)[] | null, z.ZodTypeDef, string | number | boolean | Record | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | (string | number | boolean | any | any | null)[] | null)[] | null)[] | null)[] | null)[] | null)[] | null)[] | null)[] | null)[] | null)[] | null)[] | null>, "many">> + id: z.ZodString; + feedId: z.ZodString; + title: z.ZodNullable; + url: z.ZodNullable; + content: z.ZodNullable; + description: z.ZodNullable; + guid: z.ZodString; + author: z.ZodNullable; + authorUrl: z.ZodNullable; + authorAvatar: z.ZodNullable; + changedAt: z.ZodString; + publishedAt: z.ZodString; + media: z.ZodNullable, "many">>; + categories: z.ZodNullable>; + attachments: z.ZodNullable, "many">>; }, "media" | "attachments">, { - attachments: z.ZodNullable - type: z.ZodOptional - title: z.ZodOptional - }, "strip", z.ZodTypeAny, { - url: string - length?: number | undefined - type?: string | undefined - title?: string | undefined - }, { - url: string - length?: number | undefined - type?: string | undefined - title?: string | undefined - }>, "many">>> - media: z.ZodNullable - preview_image_url: z.ZodOptional - }, "strip", z.ZodTypeAny, { - type: "photo" | "video" - url: string - preview_image_url?: string | undefined - }, { - type: "photo" | "video" - url: string - preview_image_url?: string | undefined - }>, "many">>> + attachments: z.ZodNullable; + mime_type: z.ZodOptional; + size_in_bytes: z.ZodOptional; + title: z.ZodOptional; + }, "strip", z.ZodTypeAny, { + url: string; + title?: string | undefined; + duration_in_seconds?: number | undefined; + mime_type?: string | undefined; + size_in_bytes?: number | undefined; + }, { + url: string; + title?: string | undefined; + duration_in_seconds?: number | undefined; + mime_type?: string | undefined; + size_in_bytes?: number | undefined; + }>, "many">>>; + media: z.ZodNullable; + preview_image_url: z.ZodOptional; + }, "strip", z.ZodTypeAny, { + type: "photo" | "video"; + url: string; + preview_image_url?: string | undefined; + }, { + type: "photo" | "video"; + url: string; + preview_image_url?: string | undefined; + }>, "many">>>; }>, "strip", z.ZodTypeAny, { - description: string | null - title: string | null - content: string | null - id: string - url: string | null - feedId: string - guid: string - author: string | null - authorUrl: string | null - authorAvatar: string | null - changedAt: string - publishedAt: string - categories: string[] | null - media?: { - type: "photo" | "video" - url: string - preview_image_url?: string | undefined - }[] | null | undefined - attachments?: { - url: string - length?: number | undefined - type?: string | undefined - title?: string | undefined - }[] | null | undefined + description: string | null; + title: string | null; + content: string | null; + id: string; + url: string | null; + feedId: string; + guid: string; + author: string | null; + authorUrl: string | null; + authorAvatar: string | null; + changedAt: string; + publishedAt: string; + categories: string[] | null; + media?: { + type: "photo" | "video"; + url: string; + preview_image_url?: string | undefined; + }[] | null | undefined; + attachments?: { + url: string; + title?: string | undefined; + duration_in_seconds?: number | undefined; + mime_type?: string | undefined; + size_in_bytes?: number | undefined; + }[] | null | undefined; }, { - description: string | null - title: string | null - content: string | null - id: string - url: string | null - feedId: string - guid: string - author: string | null - authorUrl: string | null - authorAvatar: string | null - changedAt: string - publishedAt: string - categories: string[] | null - media?: { - type: "photo" | "video" - url: string - preview_image_url?: string | undefined - }[] | null | undefined - attachments?: { - url: string - length?: number | undefined - type?: string | undefined - title?: string | undefined - }[] | null | undefined -}> + description: string | null; + title: string | null; + content: string | null; + id: string; + url: string | null; + feedId: string; + guid: string; + author: string | null; + authorUrl: string | null; + authorAvatar: string | null; + changedAt: string; + publishedAt: string; + categories: string[] | null; + media?: { + type: "photo" | "video"; + url: string; + preview_image_url?: string | undefined; + }[] | null | undefined; + attachments?: { + url: string; + title?: string | undefined; + duration_in_seconds?: number | undefined; + mime_type?: string | undefined; + size_in_bytes?: number | undefined; + }[] | null | undefined; +}>; declare const entriesRelations: drizzle_orm.Relations<"entries", { - feeds: drizzle_orm.One<"feeds", true> - collections: drizzle_orm.Many<"collections"> - feedPowerTokens: drizzle_orm.One<"feedPowerTokens", true> - entryReadHistories: drizzle_orm.One<"entryReadHistories", true> -}> + feeds: drizzle_orm.One<"feeds", true>; + collections: drizzle_orm.Many<"collections">; + feedPowerTokens: drizzle_orm.One<"feedPowerTokens", true>; + entryReadHistories: drizzle_orm.One<"entryReadHistories", true>; +}>; type EntriesModel = InferInsertModel & { - attachments?: AttachmentsModel[] | null - media?: MediaModel[] | null -} + attachments?: AttachmentsModel[] | null; + media?: MediaModel[] | null; +}; declare const entryReadHistories: drizzle_orm_pg_core.PgTableWithColumns<{ - name: "entryReadHistories" - schema: undefined - columns: { - entryId: drizzle_orm_pg_core.PgColumn<{ - name: "entry_id" - tableName: "entryReadHistories" - dataType: "string" - columnType: "PgText" - data: string - driverParam: string - notNull: true - hasDefault: false - isPrimaryKey: true - isAutoincrement: false - hasRuntimeDefault: false - enumValues: [string, ...string[]] - baseColumn: never - generated: undefined - }, {}, {}> - userIds: drizzle_orm_pg_core.PgColumn<{ - name: "user_ids" - tableName: "entryReadHistories" - dataType: "array" - columnType: "PgArray" - data: string[] - driverParam: string | string[] - notNull: true - hasDefault: true - isPrimaryKey: false - isAutoincrement: false - hasRuntimeDefault: false - enumValues: [string, ...string[]] - baseColumn: drizzle_orm.Column<{ - name: "user_ids" - tableName: "entryReadHistories" - dataType: "string" - columnType: "PgText" - data: string - driverParam: string - notNull: false - hasDefault: false - isPrimaryKey: false - isAutoincrement: false - hasRuntimeDefault: false - enumValues: [string, ...string[]] - baseColumn: never - generated: undefined - }, object, object> - generated: undefined - }, {}, {}> - readCount: drizzle_orm_pg_core.PgColumn<{ - name: "read_count" - tableName: "entryReadHistories" - dataType: "number" - columnType: "PgInteger" - data: number - driverParam: string | number - notNull: true - hasDefault: true - isPrimaryKey: false - isAutoincrement: false - hasRuntimeDefault: false - enumValues: undefined - baseColumn: never - generated: undefined - }, {}, {}> - } - dialect: "pg" -}> + name: "entryReadHistories"; + schema: undefined; + columns: { + entryId: drizzle_orm_pg_core.PgColumn<{ + name: "entry_id"; + tableName: "entryReadHistories"; + dataType: "string"; + columnType: "PgText"; + data: string; + driverParam: string; + notNull: true; + hasDefault: false; + isPrimaryKey: true; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: [string, ...string[]]; + baseColumn: never; + generated: undefined; + }, {}, {}>; + userIds: drizzle_orm_pg_core.PgColumn<{ + name: "user_ids"; + tableName: "entryReadHistories"; + dataType: "array"; + columnType: "PgArray"; + data: string[]; + driverParam: string | string[]; + notNull: true; + hasDefault: true; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: [string, ...string[]]; + baseColumn: drizzle_orm.Column<{ + name: "user_ids"; + tableName: "entryReadHistories"; + dataType: "string"; + columnType: "PgText"; + data: string; + driverParam: string; + notNull: false; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: [string, ...string[]]; + baseColumn: never; + generated: undefined; + }, object, object>; + generated: undefined; + }, {}, {}>; + readCount: drizzle_orm_pg_core.PgColumn<{ + name: "read_count"; + tableName: "entryReadHistories"; + dataType: "number"; + columnType: "PgInteger"; + data: number; + driverParam: string | number; + notNull: true; + hasDefault: true; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: undefined; + baseColumn: never; + generated: undefined; + }, {}, {}>; + }; + dialect: "pg"; +}>; declare const entryReadHistoriesRelations: drizzle_orm.Relations<"entryReadHistories", { - entry: drizzle_orm.One<"entries", true> -}> -type EntryReadHistoriesModel = InferInsertModel + entry: drizzle_orm.One<"entries", true>; +}>; +type EntryReadHistoriesModel = InferInsertModel; declare const entryReadHistoriesOpenAPISchema: z.ZodObject<{ - entryId: z.ZodString - userIds: z.ZodArray - readCount: z.ZodNumber + entryId: z.ZodString; + userIds: z.ZodArray; + readCount: z.ZodNumber; }, z.UnknownKeysParam, z.ZodTypeAny, { - entryId: string - userIds: string[] - readCount: number + entryId: string; + userIds: string[]; + readCount: number; }, { - entryId: string - userIds: string[] - readCount: number -}> + entryId: string; + userIds: string[]; + readCount: number; +}>; declare const feeds: drizzle_orm_pg_core.PgTableWithColumns<{ - name: "feeds" - schema: undefined - columns: { - id: drizzle_orm_pg_core.PgColumn<{ - name: "id" - tableName: "feeds" - dataType: "string" - columnType: "PgText" - data: string - driverParam: string - notNull: true - hasDefault: true - isPrimaryKey: true - isAutoincrement: false - hasRuntimeDefault: true - enumValues: [string, ...string[]] - baseColumn: never - generated: undefined - }, {}, {}> - url: drizzle_orm_pg_core.PgColumn<{ - name: "url" - tableName: "feeds" - dataType: "string" - columnType: "PgText" - data: string - driverParam: string - notNull: true - hasDefault: false - isPrimaryKey: false - isAutoincrement: false - hasRuntimeDefault: false - enumValues: [string, ...string[]] - baseColumn: never - generated: undefined - }, {}, {}> - title: drizzle_orm_pg_core.PgColumn<{ - name: "title" - tableName: "feeds" - dataType: "string" - columnType: "PgText" - data: string - driverParam: string - notNull: false - hasDefault: false - isPrimaryKey: false - isAutoincrement: false - hasRuntimeDefault: false - enumValues: [string, ...string[]] - baseColumn: never - generated: undefined - }, {}, {}> - description: drizzle_orm_pg_core.PgColumn<{ - name: "description" - tableName: "feeds" - dataType: "string" - columnType: "PgText" - data: string - driverParam: string - notNull: false - hasDefault: false - isPrimaryKey: false - isAutoincrement: false - hasRuntimeDefault: false - enumValues: [string, ...string[]] - baseColumn: never - generated: undefined - }, {}, {}> - siteUrl: drizzle_orm_pg_core.PgColumn<{ - name: "site_url" - tableName: "feeds" - dataType: "string" - columnType: "PgText" - data: string - driverParam: string - notNull: false - hasDefault: false - isPrimaryKey: false - isAutoincrement: false - hasRuntimeDefault: false - enumValues: [string, ...string[]] - baseColumn: never - generated: undefined - }, {}, {}> - image: drizzle_orm_pg_core.PgColumn<{ - name: "image" - tableName: "feeds" - dataType: "string" - columnType: "PgText" - data: string - driverParam: string - notNull: false - hasDefault: false - isPrimaryKey: false - isAutoincrement: false - hasRuntimeDefault: false - enumValues: [string, ...string[]] - baseColumn: never - generated: undefined - }, {}, {}> - checkedAt: drizzle_orm_pg_core.PgColumn<{ - name: "checked_at" - tableName: "feeds" - dataType: "date" - columnType: "PgTimestamp" - data: Date - driverParam: string - notNull: true - hasDefault: false - isPrimaryKey: false - isAutoincrement: false - hasRuntimeDefault: false - enumValues: undefined - baseColumn: never - generated: undefined - }, {}, {}> - lastModifiedHeader: drizzle_orm_pg_core.PgColumn<{ - name: "last_modified_header" - tableName: "feeds" - dataType: "string" - columnType: "PgText" - data: string - driverParam: string - notNull: false - hasDefault: false - isPrimaryKey: false - isAutoincrement: false - hasRuntimeDefault: false - enumValues: [string, ...string[]] - baseColumn: never - generated: undefined - }, {}, {}> - etagHeader: drizzle_orm_pg_core.PgColumn<{ - name: "etag_header" - tableName: "feeds" - dataType: "string" - columnType: "PgText" - data: string - driverParam: string - notNull: false - hasDefault: false - isPrimaryKey: false - isAutoincrement: false - hasRuntimeDefault: false - enumValues: [string, ...string[]] - baseColumn: never - generated: undefined - }, {}, {}> - ttl: drizzle_orm_pg_core.PgColumn<{ - name: "ttl" - tableName: "feeds" - dataType: "number" - columnType: "PgInteger" - data: number - driverParam: string | number - notNull: false - hasDefault: false - isPrimaryKey: false - isAutoincrement: false - hasRuntimeDefault: false - enumValues: undefined - baseColumn: never - generated: undefined - }, {}, {}> - errorMessage: drizzle_orm_pg_core.PgColumn<{ - name: "error_message" - tableName: "feeds" - dataType: "string" - columnType: "PgText" - data: string - driverParam: string - notNull: false - hasDefault: false - isPrimaryKey: false - isAutoincrement: false - hasRuntimeDefault: false - enumValues: [string, ...string[]] - baseColumn: never - generated: undefined - }, {}, {}> - errorAt: drizzle_orm_pg_core.PgColumn<{ - name: "error_at" - tableName: "feeds" - dataType: "date" - columnType: "PgTimestamp" - data: Date - driverParam: string - notNull: false - hasDefault: false - isPrimaryKey: false - isAutoincrement: false - hasRuntimeDefault: false - enumValues: undefined - baseColumn: never - generated: undefined - }, {}, {}> - ownerUserId: drizzle_orm_pg_core.PgColumn<{ - name: "owner_user_id" - tableName: "feeds" - dataType: "string" - columnType: "PgText" - data: string - driverParam: string - notNull: false - hasDefault: false - isPrimaryKey: false - isAutoincrement: false - hasRuntimeDefault: false - enumValues: [string, ...string[]] - baseColumn: never - generated: undefined - }, {}, {}> - } - dialect: "pg" -}> + name: "feeds"; + schema: undefined; + columns: { + id: drizzle_orm_pg_core.PgColumn<{ + name: "id"; + tableName: "feeds"; + dataType: "string"; + columnType: "PgText"; + data: string; + driverParam: string; + notNull: true; + hasDefault: true; + isPrimaryKey: true; + isAutoincrement: false; + hasRuntimeDefault: true; + enumValues: [string, ...string[]]; + baseColumn: never; + generated: undefined; + }, {}, {}>; + url: drizzle_orm_pg_core.PgColumn<{ + name: "url"; + tableName: "feeds"; + dataType: "string"; + columnType: "PgText"; + data: string; + driverParam: string; + notNull: true; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: [string, ...string[]]; + baseColumn: never; + generated: undefined; + }, {}, {}>; + title: drizzle_orm_pg_core.PgColumn<{ + name: "title"; + tableName: "feeds"; + dataType: "string"; + columnType: "PgText"; + data: string; + driverParam: string; + notNull: false; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: [string, ...string[]]; + baseColumn: never; + generated: undefined; + }, {}, {}>; + description: drizzle_orm_pg_core.PgColumn<{ + name: "description"; + tableName: "feeds"; + dataType: "string"; + columnType: "PgText"; + data: string; + driverParam: string; + notNull: false; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: [string, ...string[]]; + baseColumn: never; + generated: undefined; + }, {}, {}>; + siteUrl: drizzle_orm_pg_core.PgColumn<{ + name: "site_url"; + tableName: "feeds"; + dataType: "string"; + columnType: "PgText"; + data: string; + driverParam: string; + notNull: false; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: [string, ...string[]]; + baseColumn: never; + generated: undefined; + }, {}, {}>; + image: drizzle_orm_pg_core.PgColumn<{ + name: "image"; + tableName: "feeds"; + dataType: "string"; + columnType: "PgText"; + data: string; + driverParam: string; + notNull: false; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: [string, ...string[]]; + baseColumn: never; + generated: undefined; + }, {}, {}>; + checkedAt: drizzle_orm_pg_core.PgColumn<{ + name: "checked_at"; + tableName: "feeds"; + dataType: "date"; + columnType: "PgTimestamp"; + data: Date; + driverParam: string; + notNull: true; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: undefined; + baseColumn: never; + generated: undefined; + }, {}, {}>; + lastModifiedHeader: drizzle_orm_pg_core.PgColumn<{ + name: "last_modified_header"; + tableName: "feeds"; + dataType: "string"; + columnType: "PgText"; + data: string; + driverParam: string; + notNull: false; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: [string, ...string[]]; + baseColumn: never; + generated: undefined; + }, {}, {}>; + etagHeader: drizzle_orm_pg_core.PgColumn<{ + name: "etag_header"; + tableName: "feeds"; + dataType: "string"; + columnType: "PgText"; + data: string; + driverParam: string; + notNull: false; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: [string, ...string[]]; + baseColumn: never; + generated: undefined; + }, {}, {}>; + ttl: drizzle_orm_pg_core.PgColumn<{ + name: "ttl"; + tableName: "feeds"; + dataType: "number"; + columnType: "PgInteger"; + data: number; + driverParam: string | number; + notNull: false; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: undefined; + baseColumn: never; + generated: undefined; + }, {}, {}>; + errorMessage: drizzle_orm_pg_core.PgColumn<{ + name: "error_message"; + tableName: "feeds"; + dataType: "string"; + columnType: "PgText"; + data: string; + driverParam: string; + notNull: false; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: [string, ...string[]]; + baseColumn: never; + generated: undefined; + }, {}, {}>; + errorAt: drizzle_orm_pg_core.PgColumn<{ + name: "error_at"; + tableName: "feeds"; + dataType: "date"; + columnType: "PgTimestamp"; + data: Date; + driverParam: string; + notNull: false; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: undefined; + baseColumn: never; + generated: undefined; + }, {}, {}>; + ownerUserId: drizzle_orm_pg_core.PgColumn<{ + name: "owner_user_id"; + tableName: "feeds"; + dataType: "string"; + columnType: "PgText"; + data: string; + driverParam: string; + notNull: false; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: [string, ...string[]]; + baseColumn: never; + generated: undefined; + }, {}, {}>; + }; + dialect: "pg"; +}>; declare const feedsOpenAPISchema: zod.ZodObject<{ - id: zod.ZodString - url: zod.ZodString - title: zod.ZodNullable - description: zod.ZodNullable - siteUrl: zod.ZodNullable - image: zod.ZodNullable - checkedAt: zod.ZodString - lastModifiedHeader: zod.ZodNullable - etagHeader: zod.ZodNullable - ttl: zod.ZodNullable - errorMessage: zod.ZodNullable - errorAt: zod.ZodNullable - ownerUserId: zod.ZodNullable + id: zod.ZodString; + url: zod.ZodString; + title: zod.ZodNullable; + description: zod.ZodNullable; + siteUrl: zod.ZodNullable; + image: zod.ZodNullable; + checkedAt: zod.ZodString; + lastModifiedHeader: zod.ZodNullable; + etagHeader: zod.ZodNullable; + ttl: zod.ZodNullable; + errorMessage: zod.ZodNullable; + errorAt: zod.ZodNullable; + ownerUserId: zod.ZodNullable; }, zod.UnknownKeysParam, zod.ZodTypeAny, { - description: string | null - title: string | null - id: string - image: string | null - url: string - siteUrl: string | null - checkedAt: string - lastModifiedHeader: string | null - etagHeader: string | null - ttl: number | null - errorMessage: string | null - errorAt: string | null - ownerUserId: string | null + description: string | null; + title: string | null; + id: string; + image: string | null; + url: string; + siteUrl: string | null; + checkedAt: string; + lastModifiedHeader: string | null; + etagHeader: string | null; + ttl: number | null; + errorMessage: string | null; + errorAt: string | null; + ownerUserId: string | null; }, { - description: string | null - title: string | null - id: string - image: string | null - url: string - siteUrl: string | null - checkedAt: string - lastModifiedHeader: string | null - etagHeader: string | null - ttl: number | null - errorMessage: string | null - errorAt: string | null - ownerUserId: string | null -}> + description: string | null; + title: string | null; + id: string; + image: string | null; + url: string; + siteUrl: string | null; + checkedAt: string; + lastModifiedHeader: string | null; + etagHeader: string | null; + ttl: number | null; + errorMessage: string | null; + errorAt: string | null; + ownerUserId: string | null; +}>; declare const feedsInputSchema: zod.ZodObject<{ - description: zod.ZodOptional> - title: zod.ZodOptional> - id: zod.ZodOptional - image: zod.ZodOptional> - url: zod.ZodString - siteUrl: zod.ZodOptional> - checkedAt: zod.ZodString - lastModifiedHeader: zod.ZodOptional> - etagHeader: zod.ZodOptional> - ttl: zod.ZodOptional> - errorMessage: zod.ZodOptional> - errorAt: zod.ZodOptional> - ownerUserId: zod.ZodOptional> + description: zod.ZodOptional>; + title: zod.ZodOptional>; + id: zod.ZodOptional; + image: zod.ZodOptional>; + url: zod.ZodString; + siteUrl: zod.ZodOptional>; + checkedAt: zod.ZodString; + lastModifiedHeader: zod.ZodOptional>; + etagHeader: zod.ZodOptional>; + ttl: zod.ZodOptional>; + errorMessage: zod.ZodOptional>; + errorAt: zod.ZodOptional>; + ownerUserId: zod.ZodOptional>; }, zod.UnknownKeysParam, zod.ZodTypeAny, { - url: string - checkedAt: string - description?: string | null | undefined - title?: string | null | undefined - id?: string | undefined - image?: string | null | undefined - siteUrl?: string | null | undefined - lastModifiedHeader?: string | null | undefined - etagHeader?: string | null | undefined - ttl?: number | null | undefined - errorMessage?: string | null | undefined - errorAt?: string | null | undefined - ownerUserId?: string | null | undefined + url: string; + checkedAt: string; + description?: string | null | undefined; + title?: string | null | undefined; + id?: string | undefined; + image?: string | null | undefined; + siteUrl?: string | null | undefined; + lastModifiedHeader?: string | null | undefined; + etagHeader?: string | null | undefined; + ttl?: number | null | undefined; + errorMessage?: string | null | undefined; + errorAt?: string | null | undefined; + ownerUserId?: string | null | undefined; }, { - url: string - checkedAt: string - description?: string | null | undefined - title?: string | null | undefined - id?: string | undefined - image?: string | null | undefined - siteUrl?: string | null | undefined - lastModifiedHeader?: string | null | undefined - etagHeader?: string | null | undefined - ttl?: number | null | undefined - errorMessage?: string | null | undefined - errorAt?: string | null | undefined - ownerUserId?: string | null | undefined -}> + url: string; + checkedAt: string; + description?: string | null | undefined; + title?: string | null | undefined; + id?: string | undefined; + image?: string | null | undefined; + siteUrl?: string | null | undefined; + lastModifiedHeader?: string | null | undefined; + etagHeader?: string | null | undefined; + ttl?: number | null | undefined; + errorMessage?: string | null | undefined; + errorAt?: string | null | undefined; + ownerUserId?: string | null | undefined; +}>; declare const feedsRelations: drizzle_orm.Relations<"feeds", { - subscriptions: drizzle_orm.Many<"subscriptions"> - entries: drizzle_orm.Many<"entries"> - owner: drizzle_orm.One<"user", false> -}> -type FeedModel = InferInsertModel + subscriptions: drizzle_orm.Many<"subscriptions">; + entries: drizzle_orm.Many<"entries">; + owner: drizzle_orm.One<"user", false>; +}>; +type FeedModel = InferInsertModel; declare const invitations: drizzle_orm_pg_core.PgTableWithColumns<{ - name: "invitations" - schema: undefined - columns: { - code: drizzle_orm_pg_core.PgColumn<{ - name: "code" - tableName: "invitations" - dataType: "string" - columnType: "PgText" - data: string - driverParam: string - notNull: true - hasDefault: false - isPrimaryKey: true - isAutoincrement: false - hasRuntimeDefault: false - enumValues: [string, ...string[]] - baseColumn: never - generated: undefined - }, {}, {}> - createdAt: drizzle_orm_pg_core.PgColumn<{ - name: "created_at" - tableName: "invitations" - dataType: "date" - columnType: "PgTimestamp" - data: Date - driverParam: string - notNull: false - hasDefault: true - isPrimaryKey: false - isAutoincrement: false - hasRuntimeDefault: false - enumValues: undefined - baseColumn: never - generated: undefined - }, {}, {}> - fromUserId: drizzle_orm_pg_core.PgColumn<{ - name: "from_user_id" - tableName: "invitations" - dataType: "string" - columnType: "PgText" - data: string - driverParam: string - notNull: true - hasDefault: false - isPrimaryKey: false - isAutoincrement: false - hasRuntimeDefault: false - enumValues: [string, ...string[]] - baseColumn: never - generated: undefined - }, {}, {}> - toUserId: drizzle_orm_pg_core.PgColumn<{ - name: "to_user_id" - tableName: "invitations" - dataType: "string" - columnType: "PgText" - data: string - driverParam: string - notNull: false - hasDefault: false - isPrimaryKey: false - isAutoincrement: false - hasRuntimeDefault: false - enumValues: [string, ...string[]] - baseColumn: never - generated: undefined - }, {}, {}> - } - dialect: "pg" -}> + name: "invitations"; + schema: undefined; + columns: { + code: drizzle_orm_pg_core.PgColumn<{ + name: "code"; + tableName: "invitations"; + dataType: "string"; + columnType: "PgText"; + data: string; + driverParam: string; + notNull: true; + hasDefault: false; + isPrimaryKey: true; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: [string, ...string[]]; + baseColumn: never; + generated: undefined; + }, {}, {}>; + createdAt: drizzle_orm_pg_core.PgColumn<{ + name: "created_at"; + tableName: "invitations"; + dataType: "date"; + columnType: "PgTimestamp"; + data: Date; + driverParam: string; + notNull: false; + hasDefault: true; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: undefined; + baseColumn: never; + generated: undefined; + }, {}, {}>; + fromUserId: drizzle_orm_pg_core.PgColumn<{ + name: "from_user_id"; + tableName: "invitations"; + dataType: "string"; + columnType: "PgText"; + data: string; + driverParam: string; + notNull: true; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: [string, ...string[]]; + baseColumn: never; + generated: undefined; + }, {}, {}>; + toUserId: drizzle_orm_pg_core.PgColumn<{ + name: "to_user_id"; + tableName: "invitations"; + dataType: "string"; + columnType: "PgText"; + data: string; + driverParam: string; + notNull: false; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: [string, ...string[]]; + baseColumn: never; + generated: undefined; + }, {}, {}>; + }; + dialect: "pg"; +}>; declare const subscriptions: drizzle_orm_pg_core.PgTableWithColumns<{ - name: "subscriptions" - schema: undefined - columns: { - userId: drizzle_orm_pg_core.PgColumn<{ - name: "user_id" - tableName: "subscriptions" - dataType: "string" - columnType: "PgText" - data: string - driverParam: string - notNull: true - hasDefault: false - isPrimaryKey: false - isAutoincrement: false - hasRuntimeDefault: false - enumValues: [string, ...string[]] - baseColumn: never - generated: undefined - }, {}, {}> - feedId: drizzle_orm_pg_core.PgColumn<{ - name: "feed_id" - tableName: "subscriptions" - dataType: "string" - columnType: "PgText" - data: string - driverParam: string - notNull: true - hasDefault: false - isPrimaryKey: false - isAutoincrement: false - hasRuntimeDefault: false - enumValues: [string, ...string[]] - baseColumn: never - generated: undefined - }, {}, {}> - view: drizzle_orm_pg_core.PgColumn<{ - name: "view" - tableName: "subscriptions" - dataType: "number" - columnType: "PgSmallInt" - data: number - driverParam: string | number - notNull: true - hasDefault: false - isPrimaryKey: false - isAutoincrement: false - hasRuntimeDefault: false - enumValues: undefined - baseColumn: never - generated: undefined - }, {}, {}> - category: drizzle_orm_pg_core.PgColumn<{ - name: "category" - tableName: "subscriptions" - dataType: "string" - columnType: "PgText" - data: string - driverParam: string - notNull: false - hasDefault: false - isPrimaryKey: false - isAutoincrement: false - hasRuntimeDefault: false - enumValues: [string, ...string[]] - baseColumn: never - generated: undefined - }, {}, {}> - title: drizzle_orm_pg_core.PgColumn<{ - name: "title" - tableName: "subscriptions" - dataType: "string" - columnType: "PgText" - data: string - driverParam: string - notNull: false - hasDefault: false - isPrimaryKey: false - isAutoincrement: false - hasRuntimeDefault: false - enumValues: [string, ...string[]] - baseColumn: never - generated: undefined - }, {}, {}> - isPrivate: drizzle_orm_pg_core.PgColumn<{ - name: "is_private" - tableName: "subscriptions" - dataType: "boolean" - columnType: "PgBoolean" - data: boolean - driverParam: boolean - notNull: true - hasDefault: true - isPrimaryKey: false - isAutoincrement: false - hasRuntimeDefault: false - enumValues: undefined - baseColumn: never - generated: undefined - }, {}, {}> - } - dialect: "pg" -}> + name: "subscriptions"; + schema: undefined; + columns: { + userId: drizzle_orm_pg_core.PgColumn<{ + name: "user_id"; + tableName: "subscriptions"; + dataType: "string"; + columnType: "PgText"; + data: string; + driverParam: string; + notNull: true; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: [string, ...string[]]; + baseColumn: never; + generated: undefined; + }, {}, {}>; + feedId: drizzle_orm_pg_core.PgColumn<{ + name: "feed_id"; + tableName: "subscriptions"; + dataType: "string"; + columnType: "PgText"; + data: string; + driverParam: string; + notNull: true; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: [string, ...string[]]; + baseColumn: never; + generated: undefined; + }, {}, {}>; + view: drizzle_orm_pg_core.PgColumn<{ + name: "view"; + tableName: "subscriptions"; + dataType: "number"; + columnType: "PgSmallInt"; + data: number; + driverParam: string | number; + notNull: true; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: undefined; + baseColumn: never; + generated: undefined; + }, {}, {}>; + category: drizzle_orm_pg_core.PgColumn<{ + name: "category"; + tableName: "subscriptions"; + dataType: "string"; + columnType: "PgText"; + data: string; + driverParam: string; + notNull: false; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: [string, ...string[]]; + baseColumn: never; + generated: undefined; + }, {}, {}>; + title: drizzle_orm_pg_core.PgColumn<{ + name: "title"; + tableName: "subscriptions"; + dataType: "string"; + columnType: "PgText"; + data: string; + driverParam: string; + notNull: false; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: [string, ...string[]]; + baseColumn: never; + generated: undefined; + }, {}, {}>; + isPrivate: drizzle_orm_pg_core.PgColumn<{ + name: "is_private"; + tableName: "subscriptions"; + dataType: "boolean"; + columnType: "PgBoolean"; + data: boolean; + driverParam: boolean; + notNull: true; + hasDefault: true; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: undefined; + baseColumn: never; + generated: undefined; + }, {}, {}>; + }; + dialect: "pg"; +}>; declare const subscriptionsOpenAPISchema: zod.ZodObject<{ - userId: zod.ZodString - feedId: zod.ZodString - view: zod.ZodNumber - category: zod.ZodNullable - title: zod.ZodNullable - isPrivate: zod.ZodBoolean + userId: zod.ZodString; + feedId: zod.ZodString; + view: zod.ZodNumber; + category: zod.ZodNullable; + title: zod.ZodNullable; + isPrivate: zod.ZodBoolean; }, zod.UnknownKeysParam, zod.ZodTypeAny, { - title: string | null - view: number - userId: string - feedId: string - category: string | null - isPrivate: boolean + title: string | null; + view: number; + userId: string; + feedId: string; + category: string | null; + isPrivate: boolean; }, { - title: string | null - view: number - userId: string - feedId: string - category: string | null - isPrivate: boolean -}> + title: string | null; + view: number; + userId: string; + feedId: string; + category: string | null; + isPrivate: boolean; +}>; declare const subscriptionsRelations: drizzle_orm.Relations<"subscriptions", { - users: drizzle_orm.One<"user", true> - feeds: drizzle_orm.One<"feeds", true> -}> + users: drizzle_orm.One<"user", true>; + feeds: drizzle_orm.One<"feeds", true>; +}>; declare const timeline: drizzle_orm_pg_core.PgTableWithColumns<{ - name: "timeline" - schema: undefined - columns: { - userId: drizzle_orm_pg_core.PgColumn<{ - name: "user_id" - tableName: "timeline" - dataType: "string" - columnType: "PgText" - data: string - driverParam: string - notNull: true - hasDefault: false - isPrimaryKey: false - isAutoincrement: false - hasRuntimeDefault: false - enumValues: [string, ...string[]] - baseColumn: never - generated: undefined - }, {}, {}> - feedId: drizzle_orm_pg_core.PgColumn<{ - name: "feedId" - tableName: "timeline" - dataType: "string" - columnType: "PgText" - data: string - driverParam: string - notNull: true - hasDefault: false - isPrimaryKey: false - isAutoincrement: false - hasRuntimeDefault: false - enumValues: [string, ...string[]] - baseColumn: never - generated: undefined - }, {}, {}> - entryId: drizzle_orm_pg_core.PgColumn<{ - name: "entry_id" - tableName: "timeline" - dataType: "string" - columnType: "PgText" - data: string - driverParam: string - notNull: true - hasDefault: false - isPrimaryKey: false - isAutoincrement: false - hasRuntimeDefault: false - enumValues: [string, ...string[]] - baseColumn: never - generated: undefined - }, {}, {}> - publishedAt: drizzle_orm_pg_core.PgColumn<{ - name: "published_at" - tableName: "timeline" - dataType: "date" - columnType: "PgTimestamp" - data: Date - driverParam: string - notNull: true - hasDefault: false - isPrimaryKey: false - isAutoincrement: false - hasRuntimeDefault: false - enumValues: undefined - baseColumn: never - generated: undefined - }, {}, {}> - view: drizzle_orm_pg_core.PgColumn<{ - name: "view" - tableName: "timeline" - dataType: "number" - columnType: "PgSmallInt" - data: number - driverParam: string | number - notNull: true - hasDefault: false - isPrimaryKey: false - isAutoincrement: false - hasRuntimeDefault: false - enumValues: undefined - baseColumn: never - generated: undefined - }, {}, {}> - read: drizzle_orm_pg_core.PgColumn<{ - name: "read" - tableName: "timeline" - dataType: "boolean" - columnType: "PgBoolean" - data: boolean - driverParam: boolean - notNull: false - hasDefault: false - isPrimaryKey: false - isAutoincrement: false - hasRuntimeDefault: false - enumValues: undefined - baseColumn: never - generated: undefined - }, {}, {}> - } - dialect: "pg" -}> + name: "timeline"; + schema: undefined; + columns: { + userId: drizzle_orm_pg_core.PgColumn<{ + name: "user_id"; + tableName: "timeline"; + dataType: "string"; + columnType: "PgText"; + data: string; + driverParam: string; + notNull: true; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: [string, ...string[]]; + baseColumn: never; + generated: undefined; + }, {}, {}>; + feedId: drizzle_orm_pg_core.PgColumn<{ + name: "feedId"; + tableName: "timeline"; + dataType: "string"; + columnType: "PgText"; + data: string; + driverParam: string; + notNull: true; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: [string, ...string[]]; + baseColumn: never; + generated: undefined; + }, {}, {}>; + entryId: drizzle_orm_pg_core.PgColumn<{ + name: "entry_id"; + tableName: "timeline"; + dataType: "string"; + columnType: "PgText"; + data: string; + driverParam: string; + notNull: true; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: [string, ...string[]]; + baseColumn: never; + generated: undefined; + }, {}, {}>; + publishedAt: drizzle_orm_pg_core.PgColumn<{ + name: "published_at"; + tableName: "timeline"; + dataType: "date"; + columnType: "PgTimestamp"; + data: Date; + driverParam: string; + notNull: true; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: undefined; + baseColumn: never; + generated: undefined; + }, {}, {}>; + view: drizzle_orm_pg_core.PgColumn<{ + name: "view"; + tableName: "timeline"; + dataType: "number"; + columnType: "PgSmallInt"; + data: number; + driverParam: string | number; + notNull: true; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: undefined; + baseColumn: never; + generated: undefined; + }, {}, {}>; + read: drizzle_orm_pg_core.PgColumn<{ + name: "read"; + tableName: "timeline"; + dataType: "boolean"; + columnType: "PgBoolean"; + data: boolean; + driverParam: boolean; + notNull: false; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: undefined; + baseColumn: never; + generated: undefined; + }, {}, {}>; + }; + dialect: "pg"; +}>; declare const timelineOpenAPISchema: zod.ZodObject<{ - userId: zod.ZodString - feedId: zod.ZodString - entryId: zod.ZodString - publishedAt: zod.ZodString - view: zod.ZodNumber - read: zod.ZodNullable + userId: zod.ZodString; + feedId: zod.ZodString; + entryId: zod.ZodString; + publishedAt: zod.ZodString; + view: zod.ZodNumber; + read: zod.ZodNullable; }, zod.UnknownKeysParam, zod.ZodTypeAny, { - view: number - userId: string - feedId: string - read: boolean | null - publishedAt: string - entryId: string + view: number; + userId: string; + feedId: string; + read: boolean | null; + publishedAt: string; + entryId: string; }, { - view: number - userId: string - feedId: string - read: boolean | null - publishedAt: string - entryId: string -}> + view: number; + userId: string; + feedId: string; + read: boolean | null; + publishedAt: string; + entryId: string; +}>; declare const timelineRelations: drizzle_orm.Relations<"timeline", { - entries: drizzle_orm.One<"entries", true> - feeds: drizzle_orm.One<"feeds", true> - collections: drizzle_orm.One<"collections", true> -}> + entries: drizzle_orm.One<"entries", true>; + feeds: drizzle_orm.One<"feeds", true>; + collections: drizzle_orm.One<"collections", true>; +}>; declare const users: drizzle_orm_pg_core.PgTableWithColumns<{ - name: "user" - schema: undefined - columns: { - id: drizzle_orm_pg_core.PgColumn<{ - name: "id" - tableName: "user" - dataType: "string" - columnType: "PgText" - data: string - driverParam: string - notNull: true - hasDefault: true - isPrimaryKey: true - isAutoincrement: false - hasRuntimeDefault: true - enumValues: [string, ...string[]] - baseColumn: never - generated: undefined - }, {}, {}> - name: drizzle_orm_pg_core.PgColumn<{ - name: "name" - tableName: "user" - dataType: "string" - columnType: "PgText" - data: string - driverParam: string - notNull: false - hasDefault: false - isPrimaryKey: false - isAutoincrement: false - hasRuntimeDefault: false - enumValues: [string, ...string[]] - baseColumn: never - generated: undefined - }, {}, {}> - email: drizzle_orm_pg_core.PgColumn<{ - name: "email" - tableName: "user" - dataType: "string" - columnType: "PgText" - data: string - driverParam: string - notNull: true - hasDefault: false - isPrimaryKey: false - isAutoincrement: false - hasRuntimeDefault: false - enumValues: [string, ...string[]] - baseColumn: never - generated: undefined - }, {}, {}> - emailVerified: drizzle_orm_pg_core.PgColumn<{ - name: "emailVerified" - tableName: "user" - dataType: "date" - columnType: "PgTimestamp" - data: Date - driverParam: string - notNull: false - hasDefault: false - isPrimaryKey: false - isAutoincrement: false - hasRuntimeDefault: false - enumValues: undefined - baseColumn: never - generated: undefined - }, {}, {}> - image: drizzle_orm_pg_core.PgColumn<{ - name: "image" - tableName: "user" - dataType: "string" - columnType: "PgText" - data: string - driverParam: string - notNull: false - hasDefault: false - isPrimaryKey: false - isAutoincrement: false - hasRuntimeDefault: false - enumValues: [string, ...string[]] - baseColumn: never - generated: undefined - }, {}, {}> - handle: drizzle_orm_pg_core.PgColumn<{ - name: "handle" - tableName: "user" - dataType: "string" - columnType: "PgText" - data: string - driverParam: string - notNull: false - hasDefault: false - isPrimaryKey: false - isAutoincrement: false - hasRuntimeDefault: false - enumValues: [string, ...string[]] - baseColumn: never - generated: undefined - }, {}, {}> - createdAt: drizzle_orm_pg_core.PgColumn<{ - name: "created_at" - tableName: "user" - dataType: "date" - columnType: "PgTimestamp" - data: Date - driverParam: string - notNull: true - hasDefault: true - isPrimaryKey: false - isAutoincrement: false - hasRuntimeDefault: false - enumValues: undefined - baseColumn: never - generated: undefined - }, {}, {}> - } - dialect: "pg" -}> + name: "user"; + schema: undefined; + columns: { + id: drizzle_orm_pg_core.PgColumn<{ + name: "id"; + tableName: "user"; + dataType: "string"; + columnType: "PgText"; + data: string; + driverParam: string; + notNull: true; + hasDefault: true; + isPrimaryKey: true; + isAutoincrement: false; + hasRuntimeDefault: true; + enumValues: [string, ...string[]]; + baseColumn: never; + generated: undefined; + }, {}, {}>; + name: drizzle_orm_pg_core.PgColumn<{ + name: "name"; + tableName: "user"; + dataType: "string"; + columnType: "PgText"; + data: string; + driverParam: string; + notNull: false; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: [string, ...string[]]; + baseColumn: never; + generated: undefined; + }, {}, {}>; + email: drizzle_orm_pg_core.PgColumn<{ + name: "email"; + tableName: "user"; + dataType: "string"; + columnType: "PgText"; + data: string; + driverParam: string; + notNull: true; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: [string, ...string[]]; + baseColumn: never; + generated: undefined; + }, {}, {}>; + emailVerified: drizzle_orm_pg_core.PgColumn<{ + name: "emailVerified"; + tableName: "user"; + dataType: "date"; + columnType: "PgTimestamp"; + data: Date; + driverParam: string; + notNull: false; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: undefined; + baseColumn: never; + generated: undefined; + }, {}, {}>; + image: drizzle_orm_pg_core.PgColumn<{ + name: "image"; + tableName: "user"; + dataType: "string"; + columnType: "PgText"; + data: string; + driverParam: string; + notNull: false; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: [string, ...string[]]; + baseColumn: never; + generated: undefined; + }, {}, {}>; + handle: drizzle_orm_pg_core.PgColumn<{ + name: "handle"; + tableName: "user"; + dataType: "string"; + columnType: "PgText"; + data: string; + driverParam: string; + notNull: false; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: [string, ...string[]]; + baseColumn: never; + generated: undefined; + }, {}, {}>; + createdAt: drizzle_orm_pg_core.PgColumn<{ + name: "created_at"; + tableName: "user"; + dataType: "date"; + columnType: "PgTimestamp"; + data: Date; + driverParam: string; + notNull: true; + hasDefault: true; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: undefined; + baseColumn: never; + generated: undefined; + }, {}, {}>; + }; + dialect: "pg"; +}>; declare const usersOpenApiSchema: z.ZodObject<{ - id: z.ZodString - name: z.ZodNullable - email: z.ZodString - emailVerified: z.ZodNullable - image: z.ZodNullable - handle: z.ZodNullable - createdAt: z.ZodDate + id: z.ZodString; + name: z.ZodNullable; + email: z.ZodString; + emailVerified: z.ZodNullable; + image: z.ZodNullable; + handle: z.ZodNullable; + createdAt: z.ZodDate; }, z.UnknownKeysParam, z.ZodTypeAny, { - name: string | null - id: string - email: string - emailVerified: string | null - image: string | null - handle: string | null - createdAt: Date + name: string | null; + id: string; + email: string; + emailVerified: string | null; + image: string | null; + handle: string | null; + createdAt: Date; }, { - name: string | null - id: string - email: string - emailVerified: string | null - image: string | null - handle: string | null - createdAt: Date -}> + name: string | null; + id: string; + email: string; + emailVerified: string | null; + image: string | null; + handle: string | null; + createdAt: Date; +}>; declare const accounts: drizzle_orm_pg_core.PgTableWithColumns<{ - name: "account" - schema: undefined - columns: { - userId: drizzle_orm_pg_core.PgColumn<{ - name: "userId" - tableName: "account" - dataType: "string" - columnType: "PgText" - data: string - driverParam: string - notNull: true - hasDefault: false - isPrimaryKey: false - isAutoincrement: false - hasRuntimeDefault: false - enumValues: [string, ...string[]] - baseColumn: never - generated: undefined - }, {}, {}> - type: drizzle_orm_pg_core.PgColumn<{ - name: "type" - tableName: "account" - dataType: "string" - columnType: "PgText" - data: string - driverParam: string - notNull: true - hasDefault: false - isPrimaryKey: false - isAutoincrement: false - hasRuntimeDefault: false - enumValues: [string, ...string[]] - baseColumn: never - generated: undefined - }, {}, {}> - provider: drizzle_orm_pg_core.PgColumn<{ - name: "provider" - tableName: "account" - dataType: "string" - columnType: "PgText" - data: string - driverParam: string - notNull: true - hasDefault: false - isPrimaryKey: false - isAutoincrement: false - hasRuntimeDefault: false - enumValues: [string, ...string[]] - baseColumn: never - generated: undefined - }, {}, {}> - providerAccountId: drizzle_orm_pg_core.PgColumn<{ - name: "providerAccountId" - tableName: "account" - dataType: "string" - columnType: "PgText" - data: string - driverParam: string - notNull: true - hasDefault: false - isPrimaryKey: false - isAutoincrement: false - hasRuntimeDefault: false - enumValues: [string, ...string[]] - baseColumn: never - generated: undefined - }, {}, {}> - refresh_token: drizzle_orm_pg_core.PgColumn<{ - name: "refresh_token" - tableName: "account" - dataType: "string" - columnType: "PgText" - data: string - driverParam: string - notNull: false - hasDefault: false - isPrimaryKey: false - isAutoincrement: false - hasRuntimeDefault: false - enumValues: [string, ...string[]] - baseColumn: never - generated: undefined - }, {}, {}> - access_token: drizzle_orm_pg_core.PgColumn<{ - name: "access_token" - tableName: "account" - dataType: "string" - columnType: "PgText" - data: string - driverParam: string - notNull: false - hasDefault: false - isPrimaryKey: false - isAutoincrement: false - hasRuntimeDefault: false - enumValues: [string, ...string[]] - baseColumn: never - generated: undefined - }, {}, {}> - expires_at: drizzle_orm_pg_core.PgColumn<{ - name: "expires_at" - tableName: "account" - dataType: "number" - columnType: "PgInteger" - data: number - driverParam: string | number - notNull: false - hasDefault: false - isPrimaryKey: false - isAutoincrement: false - hasRuntimeDefault: false - enumValues: undefined - baseColumn: never - generated: undefined - }, {}, {}> - token_type: drizzle_orm_pg_core.PgColumn<{ - name: "token_type" - tableName: "account" - dataType: "string" - columnType: "PgText" - data: string - driverParam: string - notNull: false - hasDefault: false - isPrimaryKey: false - isAutoincrement: false - hasRuntimeDefault: false - enumValues: [string, ...string[]] - baseColumn: never - generated: undefined - }, {}, {}> - scope: drizzle_orm_pg_core.PgColumn<{ - name: "scope" - tableName: "account" - dataType: "string" - columnType: "PgText" - data: string - driverParam: string - notNull: false - hasDefault: false - isPrimaryKey: false - isAutoincrement: false - hasRuntimeDefault: false - enumValues: [string, ...string[]] - baseColumn: never - generated: undefined - }, {}, {}> - id_token: drizzle_orm_pg_core.PgColumn<{ - name: "id_token" - tableName: "account" - dataType: "string" - columnType: "PgText" - data: string - driverParam: string - notNull: false - hasDefault: false - isPrimaryKey: false - isAutoincrement: false - hasRuntimeDefault: false - enumValues: [string, ...string[]] - baseColumn: never - generated: undefined - }, {}, {}> - session_state: drizzle_orm_pg_core.PgColumn<{ - name: "session_state" - tableName: "account" - dataType: "string" - columnType: "PgText" - data: string - driverParam: string - notNull: false - hasDefault: false - isPrimaryKey: false - isAutoincrement: false - hasRuntimeDefault: false - enumValues: [string, ...string[]] - baseColumn: never - generated: undefined - }, {}, {}> - } - dialect: "pg" -}> + name: "account"; + schema: undefined; + columns: { + userId: drizzle_orm_pg_core.PgColumn<{ + name: "userId"; + tableName: "account"; + dataType: "string"; + columnType: "PgText"; + data: string; + driverParam: string; + notNull: true; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: [string, ...string[]]; + baseColumn: never; + generated: undefined; + }, {}, {}>; + type: drizzle_orm_pg_core.PgColumn<{ + name: "type"; + tableName: "account"; + dataType: "string"; + columnType: "PgText"; + data: string; + driverParam: string; + notNull: true; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: [string, ...string[]]; + baseColumn: never; + generated: undefined; + }, {}, {}>; + provider: drizzle_orm_pg_core.PgColumn<{ + name: "provider"; + tableName: "account"; + dataType: "string"; + columnType: "PgText"; + data: string; + driverParam: string; + notNull: true; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: [string, ...string[]]; + baseColumn: never; + generated: undefined; + }, {}, {}>; + providerAccountId: drizzle_orm_pg_core.PgColumn<{ + name: "providerAccountId"; + tableName: "account"; + dataType: "string"; + columnType: "PgText"; + data: string; + driverParam: string; + notNull: true; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: [string, ...string[]]; + baseColumn: never; + generated: undefined; + }, {}, {}>; + refresh_token: drizzle_orm_pg_core.PgColumn<{ + name: "refresh_token"; + tableName: "account"; + dataType: "string"; + columnType: "PgText"; + data: string; + driverParam: string; + notNull: false; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: [string, ...string[]]; + baseColumn: never; + generated: undefined; + }, {}, {}>; + access_token: drizzle_orm_pg_core.PgColumn<{ + name: "access_token"; + tableName: "account"; + dataType: "string"; + columnType: "PgText"; + data: string; + driverParam: string; + notNull: false; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: [string, ...string[]]; + baseColumn: never; + generated: undefined; + }, {}, {}>; + expires_at: drizzle_orm_pg_core.PgColumn<{ + name: "expires_at"; + tableName: "account"; + dataType: "number"; + columnType: "PgInteger"; + data: number; + driverParam: string | number; + notNull: false; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: undefined; + baseColumn: never; + generated: undefined; + }, {}, {}>; + token_type: drizzle_orm_pg_core.PgColumn<{ + name: "token_type"; + tableName: "account"; + dataType: "string"; + columnType: "PgText"; + data: string; + driverParam: string; + notNull: false; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: [string, ...string[]]; + baseColumn: never; + generated: undefined; + }, {}, {}>; + scope: drizzle_orm_pg_core.PgColumn<{ + name: "scope"; + tableName: "account"; + dataType: "string"; + columnType: "PgText"; + data: string; + driverParam: string; + notNull: false; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: [string, ...string[]]; + baseColumn: never; + generated: undefined; + }, {}, {}>; + id_token: drizzle_orm_pg_core.PgColumn<{ + name: "id_token"; + tableName: "account"; + dataType: "string"; + columnType: "PgText"; + data: string; + driverParam: string; + notNull: false; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: [string, ...string[]]; + baseColumn: never; + generated: undefined; + }, {}, {}>; + session_state: drizzle_orm_pg_core.PgColumn<{ + name: "session_state"; + tableName: "account"; + dataType: "string"; + columnType: "PgText"; + data: string; + driverParam: string; + notNull: false; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: [string, ...string[]]; + baseColumn: never; + generated: undefined; + }, {}, {}>; + }; + dialect: "pg"; +}>; declare const sessions: drizzle_orm_pg_core.PgTableWithColumns<{ - name: "session" - schema: undefined - columns: { - sessionToken: drizzle_orm_pg_core.PgColumn<{ - name: "sessionToken" - tableName: "session" - dataType: "string" - columnType: "PgText" - data: string - driverParam: string - notNull: true - hasDefault: false - isPrimaryKey: true - isAutoincrement: false - hasRuntimeDefault: false - enumValues: [string, ...string[]] - baseColumn: never - generated: undefined - }, {}, {}> - userId: drizzle_orm_pg_core.PgColumn<{ - name: "userId" - tableName: "session" - dataType: "string" - columnType: "PgText" - data: string - driverParam: string - notNull: true - hasDefault: false - isPrimaryKey: false - isAutoincrement: false - hasRuntimeDefault: false - enumValues: [string, ...string[]] - baseColumn: never - generated: undefined - }, {}, {}> - expires: drizzle_orm_pg_core.PgColumn<{ - name: "expires" - tableName: "session" - dataType: "date" - columnType: "PgTimestamp" - data: Date - driverParam: string - notNull: true - hasDefault: false - isPrimaryKey: false - isAutoincrement: false - hasRuntimeDefault: false - enumValues: undefined - baseColumn: never - generated: undefined - }, {}, {}> - } - dialect: "pg" -}> + name: "session"; + schema: undefined; + columns: { + sessionToken: drizzle_orm_pg_core.PgColumn<{ + name: "sessionToken"; + tableName: "session"; + dataType: "string"; + columnType: "PgText"; + data: string; + driverParam: string; + notNull: true; + hasDefault: false; + isPrimaryKey: true; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: [string, ...string[]]; + baseColumn: never; + generated: undefined; + }, {}, {}>; + userId: drizzle_orm_pg_core.PgColumn<{ + name: "userId"; + tableName: "session"; + dataType: "string"; + columnType: "PgText"; + data: string; + driverParam: string; + notNull: true; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: [string, ...string[]]; + baseColumn: never; + generated: undefined; + }, {}, {}>; + expires: drizzle_orm_pg_core.PgColumn<{ + name: "expires"; + tableName: "session"; + dataType: "date"; + columnType: "PgTimestamp"; + data: Date; + driverParam: string; + notNull: true; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: undefined; + baseColumn: never; + generated: undefined; + }, {}, {}>; + }; + dialect: "pg"; +}>; declare const verificationTokens: drizzle_orm_pg_core.PgTableWithColumns<{ - name: "verificationToken" - schema: undefined - columns: { - identifier: drizzle_orm_pg_core.PgColumn<{ - name: "identifier" - tableName: "verificationToken" - dataType: "string" - columnType: "PgText" - data: string - driverParam: string - notNull: true - hasDefault: false - isPrimaryKey: false - isAutoincrement: false - hasRuntimeDefault: false - enumValues: [string, ...string[]] - baseColumn: never - generated: undefined - }, {}, {}> - token: drizzle_orm_pg_core.PgColumn<{ - name: "token" - tableName: "verificationToken" - dataType: "string" - columnType: "PgText" - data: string - driverParam: string - notNull: true - hasDefault: false - isPrimaryKey: false - isAutoincrement: false - hasRuntimeDefault: false - enumValues: [string, ...string[]] - baseColumn: never - generated: undefined - }, {}, {}> - expires: drizzle_orm_pg_core.PgColumn<{ - name: "expires" - tableName: "verificationToken" - dataType: "date" - columnType: "PgTimestamp" - data: Date - driverParam: string - notNull: true - hasDefault: false - isPrimaryKey: false - isAutoincrement: false - hasRuntimeDefault: false - enumValues: undefined - baseColumn: never - generated: undefined - }, {}, {}> - } - dialect: "pg" -}> + name: "verificationToken"; + schema: undefined; + columns: { + identifier: drizzle_orm_pg_core.PgColumn<{ + name: "identifier"; + tableName: "verificationToken"; + dataType: "string"; + columnType: "PgText"; + data: string; + driverParam: string; + notNull: true; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: [string, ...string[]]; + baseColumn: never; + generated: undefined; + }, {}, {}>; + token: drizzle_orm_pg_core.PgColumn<{ + name: "token"; + tableName: "verificationToken"; + dataType: "string"; + columnType: "PgText"; + data: string; + driverParam: string; + notNull: true; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: [string, ...string[]]; + baseColumn: never; + generated: undefined; + }, {}, {}>; + expires: drizzle_orm_pg_core.PgColumn<{ + name: "expires"; + tableName: "verificationToken"; + dataType: "date"; + columnType: "PgTimestamp"; + data: Date; + driverParam: string; + notNull: true; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: undefined; + baseColumn: never; + generated: undefined; + }, {}, {}>; + }; + dialect: "pg"; +}>; declare const usersRelations: drizzle_orm.Relations<"user", { - subscriptions: drizzle_orm.Many<"subscriptions"> - collections: drizzle_orm.Many<"collections"> - actions: drizzle_orm.One<"actions", true> - wallets: drizzle_orm.One<"wallets", true> - feeds: drizzle_orm.Many<"feeds"> -}> + subscriptions: drizzle_orm.Many<"subscriptions">; + collections: drizzle_orm.Many<"collections">; + actions: drizzle_orm.One<"actions", true>; + wallets: drizzle_orm.One<"wallets", true>; + feeds: drizzle_orm.Many<"feeds">; +}>; declare const wallets: drizzle_orm_pg_core.PgTableWithColumns<{ - name: "wallets" - schema: undefined - columns: { - addressIndex: drizzle_orm_pg_core.PgColumn<{ - name: "address_index" - tableName: "wallets" - dataType: "number" - columnType: "PgInteger" - data: number - driverParam: string | number - notNull: true - hasDefault: true - isPrimaryKey: true - isAutoincrement: false - hasRuntimeDefault: false - enumValues: undefined - baseColumn: never - generated: drizzle_orm.GeneratedColumnConfig & { - as: any - type: "always" - } - }, {}, {}> - address: drizzle_orm_pg_core.PgColumn<{ - name: "address" - tableName: "wallets" - dataType: "string" - columnType: "PgText" - data: string - driverParam: string - notNull: false - hasDefault: false - isPrimaryKey: false - isAutoincrement: false - hasRuntimeDefault: false - enumValues: [string, ...string[]] - baseColumn: never - generated: undefined - }, {}, {}> - userId: drizzle_orm_pg_core.PgColumn<{ - name: "userId" - tableName: "wallets" - dataType: "string" - columnType: "PgText" - data: string - driverParam: string - notNull: true - hasDefault: false - isPrimaryKey: false - isAutoincrement: false - hasRuntimeDefault: false - enumValues: [string, ...string[]] - baseColumn: never - generated: undefined - }, {}, {}> - createdAt: drizzle_orm_pg_core.PgColumn<{ - name: "created_at" - tableName: "wallets" - dataType: "date" - columnType: "PgTimestamp" - data: Date - driverParam: string - notNull: true - hasDefault: true - isPrimaryKey: false - isAutoincrement: false - hasRuntimeDefault: false - enumValues: undefined - baseColumn: never - generated: undefined - }, {}, {}> - dailyPowerToken: drizzle_orm_pg_core.PgColumn<{ - name: "daily_power_token" - tableName: "wallets" - dataType: "string" - columnType: "PgNumeric" - data: string - driverParam: string - notNull: true - hasDefault: true - isPrimaryKey: false - isAutoincrement: false - hasRuntimeDefault: false - enumValues: undefined - baseColumn: never - generated: undefined - }, {}, {}> - cashablePowerToken: drizzle_orm_pg_core.PgColumn<{ - name: "cashable_power_token" - tableName: "wallets" - dataType: "string" - columnType: "PgNumeric" - data: string - driverParam: string - notNull: true - hasDefault: true - isPrimaryKey: false - isAutoincrement: false - hasRuntimeDefault: false - enumValues: undefined - baseColumn: never - generated: undefined - }, {}, {}> - } - dialect: "pg" -}> + name: "wallets"; + schema: undefined; + columns: { + addressIndex: drizzle_orm_pg_core.PgColumn<{ + name: "address_index"; + tableName: "wallets"; + dataType: "number"; + columnType: "PgInteger"; + data: number; + driverParam: string | number; + notNull: true; + hasDefault: true; + isPrimaryKey: true; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: undefined; + baseColumn: never; + generated: drizzle_orm.GeneratedColumnConfig & { + as: any; + type: "always"; + }; + }, {}, {}>; + address: drizzle_orm_pg_core.PgColumn<{ + name: "address"; + tableName: "wallets"; + dataType: "string"; + columnType: "PgText"; + data: string; + driverParam: string; + notNull: false; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: [string, ...string[]]; + baseColumn: never; + generated: undefined; + }, {}, {}>; + userId: drizzle_orm_pg_core.PgColumn<{ + name: "userId"; + tableName: "wallets"; + dataType: "string"; + columnType: "PgText"; + data: string; + driverParam: string; + notNull: true; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: [string, ...string[]]; + baseColumn: never; + generated: undefined; + }, {}, {}>; + createdAt: drizzle_orm_pg_core.PgColumn<{ + name: "created_at"; + tableName: "wallets"; + dataType: "date"; + columnType: "PgTimestamp"; + data: Date; + driverParam: string; + notNull: true; + hasDefault: true; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: undefined; + baseColumn: never; + generated: undefined; + }, {}, {}>; + dailyPowerToken: drizzle_orm_pg_core.PgColumn<{ + name: "daily_power_token"; + tableName: "wallets"; + dataType: "string"; + columnType: "PgNumeric"; + data: string; + driverParam: string; + notNull: true; + hasDefault: true; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: undefined; + baseColumn: never; + generated: undefined; + }, {}, {}>; + cashablePowerToken: drizzle_orm_pg_core.PgColumn<{ + name: "cashable_power_token"; + tableName: "wallets"; + dataType: "string"; + columnType: "PgNumeric"; + data: string; + driverParam: string; + notNull: true; + hasDefault: true; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: undefined; + baseColumn: never; + generated: undefined; + }, {}, {}>; + }; + dialect: "pg"; +}>; declare const walletsOpenAPISchema: zod.ZodObject<{ - addressIndex: zod.ZodNumber - address: zod.ZodNullable - userId: zod.ZodString - createdAt: zod.ZodString - dailyPowerToken: zod.ZodString - cashablePowerToken: zod.ZodString + addressIndex: zod.ZodNumber; + address: zod.ZodNullable; + userId: zod.ZodString; + createdAt: zod.ZodString; + dailyPowerToken: zod.ZodString; + cashablePowerToken: zod.ZodString; }, zod.UnknownKeysParam, zod.ZodTypeAny, { - userId: string - createdAt: string - address: string | null - addressIndex: number - dailyPowerToken: string - cashablePowerToken: string + userId: string; + createdAt: string; + address: string | null; + addressIndex: number; + dailyPowerToken: string; + cashablePowerToken: string; }, { - userId: string - createdAt: string - address: string | null - addressIndex: number - dailyPowerToken: string - cashablePowerToken: string -}> + userId: string; + createdAt: string; + address: string | null; + addressIndex: number; + dailyPowerToken: string; + cashablePowerToken: string; +}>; declare const walletsRelations: drizzle_orm.Relations<"wallets", { - user: drizzle_orm.One<"user", true> - transactionsFrom: drizzle_orm.Many<"transactions"> - transactionTo: drizzle_orm.Many<"transactions"> -}> -declare const transactionType: drizzle_orm_pg_core.PgEnum<["tip", "mint", "burn", "withdraw"]> + user: drizzle_orm.One<"user", true>; + transactionsFrom: drizzle_orm.Many<"transactions">; + transactionTo: drizzle_orm.Many<"transactions">; +}>; +declare const transactionType: drizzle_orm_pg_core.PgEnum<["tip", "mint", "burn", "withdraw"]>; declare const transactions: drizzle_orm_pg_core.PgTableWithColumns<{ - name: "transactions" - schema: undefined - columns: { - hash: drizzle_orm_pg_core.PgColumn<{ - name: "hash" - tableName: "transactions" - dataType: "string" - columnType: "PgText" - data: string - driverParam: string - notNull: true - hasDefault: false - isPrimaryKey: true - isAutoincrement: false - hasRuntimeDefault: false - enumValues: [string, ...string[]] - baseColumn: never - generated: undefined - }, {}, {}> - type: drizzle_orm_pg_core.PgColumn<{ - name: "type" - tableName: "transactions" - dataType: "string" - columnType: "PgEnumColumn" - data: "tip" | "mint" | "burn" | "withdraw" - driverParam: string - notNull: true - hasDefault: false - isPrimaryKey: false - isAutoincrement: false - hasRuntimeDefault: false - enumValues: ["tip", "mint", "burn", "withdraw"] - baseColumn: never - generated: undefined - }, {}, {}> - fromUserId: drizzle_orm_pg_core.PgColumn<{ - name: "from_user_id" - tableName: "transactions" - dataType: "string" - columnType: "PgText" - data: string - driverParam: string - notNull: false - hasDefault: false - isPrimaryKey: false - isAutoincrement: false - hasRuntimeDefault: false - enumValues: [string, ...string[]] - baseColumn: never - generated: undefined - }, {}, {}> - toUserId: drizzle_orm_pg_core.PgColumn<{ - name: "to_user_id" - tableName: "transactions" - dataType: "string" - columnType: "PgText" - data: string - driverParam: string - notNull: false - hasDefault: false - isPrimaryKey: false - isAutoincrement: false - hasRuntimeDefault: false - enumValues: [string, ...string[]] - baseColumn: never - generated: undefined - }, {}, {}> - toFeedId: drizzle_orm_pg_core.PgColumn<{ - name: "to_feed_id" - tableName: "transactions" - dataType: "string" - columnType: "PgText" - data: string - driverParam: string - notNull: false - hasDefault: false - isPrimaryKey: false - isAutoincrement: false - hasRuntimeDefault: false - enumValues: [string, ...string[]] - baseColumn: never - generated: undefined - }, {}, {}> - powerToken: drizzle_orm_pg_core.PgColumn<{ - name: "power_token" - tableName: "transactions" - dataType: "string" - columnType: "PgNumeric" - data: string - driverParam: string - notNull: true - hasDefault: true - isPrimaryKey: false - isAutoincrement: false - hasRuntimeDefault: false - enumValues: undefined - baseColumn: never - generated: undefined - }, {}, {}> - createdAt: drizzle_orm_pg_core.PgColumn<{ - name: "created_at" - tableName: "transactions" - dataType: "date" - columnType: "PgTimestamp" - data: Date - driverParam: string - notNull: true - hasDefault: false - isPrimaryKey: false - isAutoincrement: false - hasRuntimeDefault: false - enumValues: undefined - baseColumn: never - generated: undefined - }, {}, {}> - comment: drizzle_orm_pg_core.PgColumn<{ - name: "comment" - tableName: "transactions" - dataType: "string" - columnType: "PgText" - data: string - driverParam: string - notNull: false - hasDefault: false - isPrimaryKey: false - isAutoincrement: false - hasRuntimeDefault: false - enumValues: [string, ...string[]] - baseColumn: never - generated: undefined - }, {}, {}> - } - dialect: "pg" -}> + name: "transactions"; + schema: undefined; + columns: { + hash: drizzle_orm_pg_core.PgColumn<{ + name: "hash"; + tableName: "transactions"; + dataType: "string"; + columnType: "PgText"; + data: string; + driverParam: string; + notNull: true; + hasDefault: false; + isPrimaryKey: true; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: [string, ...string[]]; + baseColumn: never; + generated: undefined; + }, {}, {}>; + type: drizzle_orm_pg_core.PgColumn<{ + name: "type"; + tableName: "transactions"; + dataType: "string"; + columnType: "PgEnumColumn"; + data: "tip" | "mint" | "burn" | "withdraw"; + driverParam: string; + notNull: true; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: ["tip", "mint", "burn", "withdraw"]; + baseColumn: never; + generated: undefined; + }, {}, {}>; + fromUserId: drizzle_orm_pg_core.PgColumn<{ + name: "from_user_id"; + tableName: "transactions"; + dataType: "string"; + columnType: "PgText"; + data: string; + driverParam: string; + notNull: false; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: [string, ...string[]]; + baseColumn: never; + generated: undefined; + }, {}, {}>; + toUserId: drizzle_orm_pg_core.PgColumn<{ + name: "to_user_id"; + tableName: "transactions"; + dataType: "string"; + columnType: "PgText"; + data: string; + driverParam: string; + notNull: false; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: [string, ...string[]]; + baseColumn: never; + generated: undefined; + }, {}, {}>; + toFeedId: drizzle_orm_pg_core.PgColumn<{ + name: "to_feed_id"; + tableName: "transactions"; + dataType: "string"; + columnType: "PgText"; + data: string; + driverParam: string; + notNull: false; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: [string, ...string[]]; + baseColumn: never; + generated: undefined; + }, {}, {}>; + powerToken: drizzle_orm_pg_core.PgColumn<{ + name: "power_token"; + tableName: "transactions"; + dataType: "string"; + columnType: "PgNumeric"; + data: string; + driverParam: string; + notNull: true; + hasDefault: true; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: undefined; + baseColumn: never; + generated: undefined; + }, {}, {}>; + createdAt: drizzle_orm_pg_core.PgColumn<{ + name: "created_at"; + tableName: "transactions"; + dataType: "date"; + columnType: "PgTimestamp"; + data: Date; + driverParam: string; + notNull: true; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: undefined; + baseColumn: never; + generated: undefined; + }, {}, {}>; + comment: drizzle_orm_pg_core.PgColumn<{ + name: "comment"; + tableName: "transactions"; + dataType: "string"; + columnType: "PgText"; + data: string; + driverParam: string; + notNull: false; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: [string, ...string[]]; + baseColumn: never; + generated: undefined; + }, {}, {}>; + }; + dialect: "pg"; +}>; declare const transactionsOpenAPISchema: zod.ZodObject<{ - hash: zod.ZodString - type: zod.ZodEnum<["tip", "mint", "burn", "withdraw"]> - fromUserId: zod.ZodNullable - toUserId: zod.ZodNullable - toFeedId: zod.ZodNullable - powerToken: zod.ZodString - createdAt: zod.ZodString - comment: zod.ZodNullable + hash: zod.ZodString; + type: zod.ZodEnum<["tip", "mint", "burn", "withdraw"]>; + fromUserId: zod.ZodNullable; + toUserId: zod.ZodNullable; + toFeedId: zod.ZodNullable; + powerToken: zod.ZodString; + createdAt: zod.ZodString; + comment: zod.ZodNullable; }, zod.UnknownKeysParam, zod.ZodTypeAny, { - type: "tip" | "mint" | "burn" | "withdraw" - createdAt: string - hash: string - fromUserId: string | null - toUserId: string | null - toFeedId: string | null - powerToken: string - comment: string | null + type: "tip" | "mint" | "burn" | "withdraw"; + createdAt: string; + hash: string; + fromUserId: string | null; + toUserId: string | null; + toFeedId: string | null; + powerToken: string; + comment: string | null; }, { - type: "tip" | "mint" | "burn" | "withdraw" - createdAt: string - hash: string - fromUserId: string | null - toUserId: string | null - toFeedId: string | null - powerToken: string - comment: string | null -}> + type: "tip" | "mint" | "burn" | "withdraw"; + createdAt: string; + hash: string; + fromUserId: string | null; + toUserId: string | null; + toFeedId: string | null; + powerToken: string; + comment: string | null; +}>; declare const transactionsRelations: drizzle_orm.Relations<"transactions", { - fromUser: drizzle_orm.One<"user", false> - toUser: drizzle_orm.One<"user", false> - toFeed: drizzle_orm.One<"feeds", false> - fromWallet: drizzle_orm.One<"wallets", false> - toWallet: drizzle_orm.One<"wallets", false> -}> + fromUser: drizzle_orm.One<"user", false>; + toUser: drizzle_orm.One<"user", false>; + toFeed: drizzle_orm.One<"feeds", false>; + fromWallet: drizzle_orm.One<"wallets", false>; + toWallet: drizzle_orm.One<"wallets", false>; +}>; declare const feedPowerTokens: drizzle_orm_pg_core.PgTableWithColumns<{ - name: "feedPowerTokens" - schema: undefined - columns: { - feedId: drizzle_orm_pg_core.PgColumn<{ - name: "feed_id" - tableName: "feedPowerTokens" - dataType: "string" - columnType: "PgText" - data: string - driverParam: string - notNull: true - hasDefault: false - isPrimaryKey: true - isAutoincrement: false - hasRuntimeDefault: false - enumValues: [string, ...string[]] - baseColumn: never - generated: undefined - }, {}, {}> - powerToken: drizzle_orm_pg_core.PgColumn<{ - name: "power_token" - tableName: "feedPowerTokens" - dataType: "string" - columnType: "PgNumeric" - data: string - driverParam: string - notNull: true - hasDefault: true - isPrimaryKey: false - isAutoincrement: false - hasRuntimeDefault: false - enumValues: undefined - baseColumn: never - generated: undefined - }, {}, {}> - } - dialect: "pg" -}> + name: "feedPowerTokens"; + schema: undefined; + columns: { + feedId: drizzle_orm_pg_core.PgColumn<{ + name: "feed_id"; + tableName: "feedPowerTokens"; + dataType: "string"; + columnType: "PgText"; + data: string; + driverParam: string; + notNull: true; + hasDefault: false; + isPrimaryKey: true; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: [string, ...string[]]; + baseColumn: never; + generated: undefined; + }, {}, {}>; + powerToken: drizzle_orm_pg_core.PgColumn<{ + name: "power_token"; + tableName: "feedPowerTokens"; + dataType: "string"; + columnType: "PgNumeric"; + data: string; + driverParam: string; + notNull: true; + hasDefault: true; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: undefined; + baseColumn: never; + generated: undefined; + }, {}, {}>; + }; + dialect: "pg"; +}>; declare const feedPowerTokensOpenAPISchema: zod.ZodObject<{ - feedId: zod.ZodString - powerToken: zod.ZodString + feedId: zod.ZodString; + powerToken: zod.ZodString; }, zod.UnknownKeysParam, zod.ZodTypeAny, { - feedId: string - powerToken: string + feedId: string; + powerToken: string; }, { - feedId: string - powerToken: string -}> + feedId: string; + powerToken: string; +}>; declare const feedPowerTokensRelations: drizzle_orm.Relations<"feedPowerTokens", { - feed: drizzle_orm.One<"feeds", true> -}> + feed: drizzle_orm.One<"feeds", true>; +}>; declare const _routes: hono_hono_base.HonoBase - code: 0 - } - outputFormat: "json" - status: 200 - } - } - "/reads/all": { - $post: { - input: { - json: { - view?: number | undefined - feedId?: string | undefined - feedIdList?: string[] | undefined - } - } - output: { - code: 0 - } - outputFormat: "json" - status: 200 - } - } - "/reads/total-count": { - $get: { - input: {} - output: { - data: { - count: number - } - code: 0 - } - outputFormat: "json" - status: 200 - } - } + "/reads": { + $post: { + input: { + json: { + entryIds: string[]; + }; + }; + output: { + code: 0; + }; + outputFormat: "json"; + status: 200; + }; + $delete: { + input: { + json: { + entryId: string; + }; + }; + output: { + code: 0; + }; + outputFormat: "json"; + status: 200; + }; + $get: { + input: { + query: { + view?: string | undefined; + }; + }; + output: { + data: { + [x: string]: number; + }; + code: 0; + }; + outputFormat: "json"; + status: 200; + }; + }; + "/reads/all": { + $post: { + input: { + json: { + view?: number | undefined; + feedId?: string | undefined; + feedIdList?: string[] | undefined; + }; + }; + output: { + code: 0; + }; + outputFormat: "json"; + status: 200; + }; + }; + "/reads/total-count": { + $get: { + input: {}; + output: { + data: { + count: number; + }; + code: 0; + }; + outputFormat: "json"; + status: 200; + }; + }; } & { - "/collections": { - $get: { - input: { - query: { - entryId: string - } - } - output: { - data: boolean - code: 0 - } - outputFormat: "json" - status: 200 - } - $post: { - input: { - json: { - entryId: string - } - } - output: { - code: 0 - } - outputFormat: "json" - status: 200 - } - $delete: { - input: { - json: { - entryId: string - } - } - output: { - code: 0 - } - outputFormat: "json" - status: 200 - } - } + "/collections": { + $get: { + input: { + query: { + entryId: string; + }; + }; + output: { + data: boolean; + code: 0; + }; + outputFormat: "json"; + status: 200; + }; + $post: { + input: { + json: { + entryId: string; + }; + }; + output: { + code: 0; + }; + outputFormat: "json"; + status: 200; + }; + $delete: { + input: { + json: { + entryId: string; + }; + }; + output: { + code: 0; + }; + outputFormat: "json"; + status: 200; + }; + }; } & { - "/categories": { - $get: { - input: { - query: { - view?: string | undefined - } - } - output: { - data?: string[] | undefined - } - outputFormat: "json" - status: 200 - } - $delete: { - input: { - json: { - feedIdList: string[] - deleteSubscriptions: boolean - } - } - output: { - code: 0 - } - outputFormat: "json" - status: 200 - } - $patch: { - input: { - json: { - category: string - feedIdList: string[] - } - } - output: { - code: 0 - } - outputFormat: "json" - status: 200 - } - } + "/categories": { + $get: { + input: { + query: { + view?: string | undefined; + }; + }; + output: { + data?: string[] | undefined; + }; + outputFormat: "json"; + status: 200; + }; + $delete: { + input: { + json: { + feedIdList: string[]; + deleteSubscriptions: boolean; + }; + }; + output: { + code: 0; + }; + outputFormat: "json"; + status: 200; + }; + $patch: { + input: { + json: { + category: string; + feedIdList: string[]; + }; + }; + output: { + code: 0; + }; + outputFormat: "json"; + status: 200; + }; + }; } & { - "/feeds/claim/message": { - $get: { - input: { - query: { - feedId: string - } - } - output: { - data: { - json: string - description: string - xml: string - content: string - } - code: 0 - } - outputFormat: "json" - status: 200 - } - } - "/feeds/claim/challenge": { - $post: { - input: { - json: { - feedId: string - } - } - output: { - code: 0 - } - outputFormat: "json" - status: 200 - } - } - "/feeds": { - $get: { - input: { - query: { - id?: string | undefined - url?: string | undefined - } - } - output: { - data: { - readCount: number - feed: { - url: string - checkedAt: string - description?: string | null | undefined - title?: string | null | undefined - id?: string | undefined - image?: string | null | undefined - siteUrl?: string | null | undefined - lastModifiedHeader?: string | null | undefined - etagHeader?: string | null | undefined - ttl?: number | null | undefined - errorMessage?: string | null | undefined - errorAt?: string | null | undefined - ownerUserId?: string | null | undefined - } - subscriptionCount: number - subscription?: { - title: string | null - view: number - userId: string - feedId: string - category: string | null - isPrivate: boolean - } | undefined - } - code: 0 - } - outputFormat: "json" - status: 200 - } - } - "/feeds/refresh": { - $get: { - input: { - query: { - id: string - } - } - output: { - code: 0 - } - outputFormat: "json" - status: 200 - } - } + "/feeds/claim/message": { + $get: { + input: { + query: { + feedId: string; + }; + }; + output: { + data: { + json: string; + description: string; + xml: string; + content: string; + }; + code: 0; + }; + outputFormat: "json"; + status: 200; + }; + }; + "/feeds/claim/challenge": { + $post: { + input: { + json: { + feedId: string; + }; + }; + output: { + code: 0; + }; + outputFormat: "json"; + status: 200; + }; + }; + "/feeds": { + $get: { + input: { + query: { + id?: string | undefined; + url?: string | undefined; + }; + }; + output: { + data: { + readCount: number; + feed: { + url: string; + checkedAt: string; + description?: string | null | undefined; + title?: string | null | undefined; + id?: string | undefined; + image?: string | null | undefined; + siteUrl?: string | null | undefined; + lastModifiedHeader?: string | null | undefined; + etagHeader?: string | null | undefined; + ttl?: number | null | undefined; + errorMessage?: string | null | undefined; + errorAt?: string | null | undefined; + ownerUserId?: string | null | undefined; + }; + subscriptionCount: number; + subscription?: { + title: string | null; + view: number; + userId: string; + feedId: string; + category: string | null; + isPrivate: boolean; + } | undefined; + }; + code: 0; + }; + outputFormat: "json"; + status: 200; + }; + }; + "/feeds/refresh": { + $get: { + input: { + query: { + id: string; + }; + }; + output: { + code: 0; + }; + outputFormat: "json"; + status: 200; + }; + }; } & { - "/discover": { - $post: { - input: { - json: { - keyword: string - } - } - output: { - data: { - feed: { - description: string | null - title: string | null - id: string - image: string | null - url: string - siteUrl: string | null - checkedAt: string - lastModifiedHeader: string | null - etagHeader: string | null - ttl: number | null - errorMessage: string | null - errorAt: string | null - ownerUserId: string | null - } - entries?: { - description: string | null - title: string | null - content: string | null - id: string - url: string | null - feedId: string - guid: string - author: string | null - authorUrl: string | null - authorAvatar: string | null - changedAt: string - publishedAt: string - categories: string[] | null - media?: { - type: "photo" | "video" - url: string - preview_image_url?: string | undefined - }[] | null | undefined - attachments?: { - url: string - length?: number | undefined - type?: string | undefined - title?: string | undefined - }[] | null | undefined - }[] | undefined - docs?: string | undefined - isSubscribed?: boolean | undefined - subscriptionCount?: number | undefined - }[] - } - outputFormat: "json" - status: 200 - } - } - "/discover/rsshub": { - $get: { - input: { - query: { - category?: string | undefined - namespace?: string | undefined - } - } - output: { - data: Record - name: string - categories: string[] - maintainers: string[] - location: string - view?: number | undefined - }> - }> - } - outputFormat: "json" - status: 200 - } - } + "/discover": { + $post: { + input: { + json: { + keyword: string; + }; + }; + output: { + data: { + feed: { + description: string | null; + title: string | null; + id: string; + image: string | null; + url: string; + siteUrl: string | null; + checkedAt: string; + lastModifiedHeader: string | null; + etagHeader: string | null; + ttl: number | null; + errorMessage: string | null; + errorAt: string | null; + ownerUserId: string | null; + }; + entries?: { + description: string | null; + title: string | null; + content: string | null; + id: string; + url: string | null; + feedId: string; + guid: string; + author: string | null; + authorUrl: string | null; + authorAvatar: string | null; + changedAt: string; + publishedAt: string; + categories: string[] | null; + media?: { + type: "photo" | "video"; + url: string; + preview_image_url?: string | undefined; + }[] | null | undefined; + attachments?: { + url: string; + title?: string | undefined; + duration_in_seconds?: number | undefined; + mime_type?: string | undefined; + size_in_bytes?: number | undefined; + }[] | null | undefined; + }[] | undefined; + docs?: string | undefined; + isSubscribed?: boolean | undefined; + subscriptionCount?: number | undefined; + }[]; + }; + outputFormat: "json"; + status: 200; + }; + }; + "/discover/rsshub": { + $get: { + input: { + query: { + category?: string | undefined; + namespace?: string | undefined; + }; + }; + output: { + data: { + [x: string]: { + description: string; + name: string; + url: string; + routes: { + [x: string]: { + description: string; + path: string; + example: string; + parameters: { + [x: string]: string; + }; + name: string; + categories: string[]; + maintainers: string[]; + location: string; + view?: number | undefined; + }; + }; + }; + }; + }; + outputFormat: "json"; + status: 200; + }; + }; } & { - "/auth-app/new-session": { - $post: { - input: {} - output: { - data: { - userId: string - sessionToken: string - expires: string - } - code: 0 - } - outputFormat: "json" - status: 200 - } - } - "/auth-app/update-account": { - $patch: { - input: { - json: { - name?: string | null | undefined - image?: string | null | undefined - handle?: string | null | undefined - } - } - output: { - code: 0 - } - outputFormat: "json" - status: 200 - } - } -} & Record<`/import/${string}`, Record<`$${Lowercase}`, { - input: Partial - output: any - outputFormat: string - status: hono_utils_http_status.StatusCode -}>> & { - [x: `/entries/read-histories/${string}`]: Record<`$${Lowercase}`, { - input: Partial - output: any - outputFormat: string - status: hono_utils_http_status.StatusCode - }> - [x: `/entries/check-new/${string}`]: Record<`$${Lowercase}`, { - input: Partial - output: any - outputFormat: string - status: hono_utils_http_status.StatusCode - }> - "/entries": { - $post: { - input: { - json: { - view?: number | undefined - feedId?: string | undefined - feedIdList?: string[] | undefined - read?: boolean | undefined - publishedAfter?: string | undefined - limit?: number | undefined - collected?: boolean | undefined - } - } - output: { - code: 0 - total: number - data?: { - entries: { - description: string | null - title: string | null - id: string - url: string | null - guid: string - author: string | null - authorUrl: string | null - authorAvatar: string | null - changedAt: string - publishedAt: string - categories: string[] | null - media?: { - type: "photo" | "video" - url: string - preview_image_url?: string | undefined - }[] | null | undefined - attachments?: { - url: string - length?: number | undefined - type?: string | undefined - title?: string | undefined - }[] | null | undefined - } - feeds: { - description: string | null - title: string | null - id: string - image: string | null - url: string - siteUrl: string | null - checkedAt: string - lastModifiedHeader: string | null - etagHeader: string | null - ttl: number | null - errorMessage: string | null - errorAt: string | null - ownerUserId: string | null - } - read: boolean | null - collections?: { - createdAt: string - } | undefined - settings?: { - summary?: boolean | undefined - translation?: "en" | "ja" | "zh-CN" | "zh-TW" | undefined - rewriteRules?: { - from: string - to: string - }[] | undefined - } | undefined - }[] | undefined - } - outputFormat: "json" - status: 200 - } - $get: { - input: { - query: { - id: string - } - } - output: { - code: 0 - data?: { - entries: { - description: string | null - title: string | null - content: string | null - id: string - url: string | null - guid: string - author: string | null - authorUrl: string | null - authorAvatar: string | null - changedAt: string - publishedAt: string - categories: string[] | null - media?: { - type: "photo" | "video" - url: string - preview_image_url?: string | undefined - }[] | null | undefined - attachments?: { - url: string - length?: number | undefined - type?: string | undefined - title?: string | undefined - }[] | null | undefined - } - feeds: { - description: string | null - title: string | null - id: string - image: string | null - url: string - siteUrl: string | null - checkedAt: string - lastModifiedHeader: string | null - etagHeader: string | null - ttl: number | null - errorMessage: string | null - errorAt: string | null - ownerUserId: string | null - } - read: boolean | null - users: Record - entryReadHistories: { - userIds: string[] - readCount: number - } | null - collections: { - createdAt: string - } - settings?: { - summary?: boolean | undefined - translation?: "en" | "ja" | "zh-CN" | "zh-TW" | undefined - rewriteRules?: { - from: string - to: string - }[] | undefined - } | undefined - } | undefined - } - outputFormat: "json" - status: 200 - } - } - "/entries/preview": { - $get: { - input: { - query: { - id: string - } - } - output: { - data: { - description: string | null - title: string | null - content: string | null - id: string - url: string | null - feedId: string - guid: string - author: string | null - authorUrl: string | null - authorAvatar: string | null - changedAt: string - publishedAt: string - categories: string[] | null - media?: { - type: "photo" | "video" - url: string - preview_image_url?: string | undefined - }[] | null | undefined - attachments?: { - url: string - length?: number | undefined - type?: string | undefined - title?: string | undefined - }[] | null | undefined - }[] - code: 0 - } - outputFormat: "json" - status: 200 - } - } + "/auth-app/new-session": { + $post: { + input: {}; + output: { + data: { + userId: string; + sessionToken: string; + expires: string; + }; + code: 0; + }; + outputFormat: "json"; + status: 200; + }; + }; + "/auth-app/update-account": { + $patch: { + input: { + json: { + name?: string | null | undefined; + image?: string | null | undefined; + handle?: string | null | undefined; + }; + }; + output: { + code: 0; + }; + outputFormat: "json"; + status: 200; + }; + }; +} & { + [x: `/import/${string}`]: { + [x: `$${Lowercase}`]: { + input: Partial; + output: any; + outputFormat: string; + status: hono_utils_http_status.StatusCode; + }; + }; +} & { + [x: `/entries/read-histories/${string}`]: { + [x: `$${Lowercase}`]: { + input: Partial; + output: any; + outputFormat: string; + status: hono_utils_http_status.StatusCode; + }; + }; + [x: `/entries/check-new/${string}`]: { + [x: `$${Lowercase}`]: { + input: Partial; + output: any; + outputFormat: string; + status: hono_utils_http_status.StatusCode; + }; + }; + "/entries": { + $post: { + input: { + json: { + view?: number | undefined; + feedId?: string | undefined; + feedIdList?: string[] | undefined; + read?: boolean | undefined; + publishedAfter?: string | undefined; + limit?: number | undefined; + collected?: boolean | undefined; + }; + }; + output: { + code: 0; + total: number; + data?: { + entries: { + description: string | null; + title: string | null; + id: string; + url: string | null; + guid: string; + author: string | null; + authorUrl: string | null; + authorAvatar: string | null; + changedAt: string; + publishedAt: string; + categories: string[] | null; + media?: { + type: "photo" | "video"; + url: string; + preview_image_url?: string | undefined; + }[] | null | undefined; + attachments?: { + url: string; + title?: string | undefined; + duration_in_seconds?: number | undefined; + mime_type?: string | undefined; + size_in_bytes?: number | undefined; + }[] | null | undefined; + }; + feeds: { + description: string | null; + title: string | null; + id: string; + image: string | null; + url: string; + siteUrl: string | null; + checkedAt: string; + lastModifiedHeader: string | null; + etagHeader: string | null; + ttl: number | null; + errorMessage: string | null; + errorAt: string | null; + ownerUserId: string | null; + }; + read: boolean | null; + collections?: { + createdAt: string; + } | undefined; + settings?: { + summary?: boolean | undefined; + translation?: "en" | "ja" | "zh-CN" | "zh-TW" | undefined; + rewriteRules?: { + from: string; + to: string; + }[] | undefined; + } | undefined; + }[] | undefined; + }; + outputFormat: "json"; + status: 200; + }; + $get: { + input: { + query: { + id: string; + }; + }; + output: { + code: 0; + data?: { + entries: { + description: string | null; + title: string | null; + content: string | null; + id: string; + url: string | null; + guid: string; + author: string | null; + authorUrl: string | null; + authorAvatar: string | null; + changedAt: string; + publishedAt: string; + categories: string[] | null; + media?: { + type: "photo" | "video"; + url: string; + preview_image_url?: string | undefined; + }[] | null | undefined; + attachments?: { + url: string; + title?: string | undefined; + duration_in_seconds?: number | undefined; + mime_type?: string | undefined; + size_in_bytes?: number | undefined; + }[] | null | undefined; + }; + feeds: { + description: string | null; + title: string | null; + id: string; + image: string | null; + url: string; + siteUrl: string | null; + checkedAt: string; + lastModifiedHeader: string | null; + etagHeader: string | null; + ttl: number | null; + errorMessage: string | null; + errorAt: string | null; + ownerUserId: string | null; + }; + read: boolean | null; + users: { + [x: string]: { + name: string | null; + id: string; + image: string | null; + handle: string | null; + }; + }; + entryReadHistories: { + userIds: string[]; + readCount: number; + } | null; + collections: { + createdAt: string; + }; + settings?: { + summary?: boolean | undefined; + translation?: "en" | "ja" | "zh-CN" | "zh-TW" | undefined; + rewriteRules?: { + from: string; + to: string; + }[] | undefined; + } | undefined; + } | undefined; + }; + outputFormat: "json"; + status: 200; + }; + }; + "/entries/preview": { + $get: { + input: { + query: { + id: string; + }; + }; + output: { + data: { + description: string | null; + title: string | null; + content: string | null; + id: string; + url: string | null; + feedId: string; + guid: string; + author: string | null; + authorUrl: string | null; + authorAvatar: string | null; + changedAt: string; + publishedAt: string; + categories: string[] | null; + media?: { + type: "photo" | "video"; + url: string; + preview_image_url?: string | undefined; + }[] | null | undefined; + attachments?: { + url: string; + title?: string | undefined; + duration_in_seconds?: number | undefined; + mime_type?: string | undefined; + size_in_bytes?: number | undefined; + }[] | null | undefined; + }[]; + code: 0; + }; + outputFormat: "json"; + status: 200; + }; + }; } & { - "/subscriptions": { - $get: { - input: { - query: { - view?: string | undefined - userId?: string | undefined - } - } - output: { - data: { - title: string | null - view: number - userId: string - feeds: { - description: string | null - title: string | null - id: string - image: string | null - url: string - siteUrl: string | null - checkedAt: string - lastModifiedHeader: string | null - etagHeader: string | null - ttl: number | null - errorMessage: string | null - errorAt: string | null - ownerUserId: string | null - } - feedId: string - category: string | null - isPrivate: boolean - }[] - code: 0 - } - outputFormat: "json" - status: 200 - } - $post: { - input: { - json: { - view: number - url: string - category?: string | null | undefined - isPrivate?: boolean | undefined - } - } - output: { - code: 0 - } - outputFormat: "json" - status: 200 - } - $delete: { - input: { - json: { - url?: string | undefined - feedId?: string | undefined - } - } - output: { - code: 0 - } - outputFormat: "json" - status: 200 - } - $patch: { - input: { - json: { - view: number - feedId: string - category?: string | null | undefined - isPrivate?: boolean | undefined - } - } - output: { - code: 0 - } - outputFormat: "json" - status: 200 - } - } -}, "/"> -type AppType = typeof _routes + "/subscriptions": { + $get: { + input: { + query: { + view?: string | undefined; + userId?: string | undefined; + }; + }; + output: { + data: { + title: string | null; + view: number; + userId: string; + feeds: { + description: string | null; + title: string | null; + id: string; + image: string | null; + url: string; + siteUrl: string | null; + checkedAt: string; + lastModifiedHeader: string | null; + etagHeader: string | null; + ttl: number | null; + errorMessage: string | null; + errorAt: string | null; + ownerUserId: string | null; + }; + feedId: string; + category: string | null; + isPrivate: boolean; + }[]; + code: 0; + }; + outputFormat: "json"; + status: 200; + }; + $post: { + input: { + json: { + view: number; + url: string; + category?: string | null | undefined; + isPrivate?: boolean | undefined; + }; + }; + output: { + code: 0; + }; + outputFormat: "json"; + status: 200; + }; + $delete: { + input: { + json: { + url?: string | undefined; + feedId?: string | undefined; + }; + }; + output: { + code: 0; + }; + outputFormat: "json"; + status: 200; + }; + $patch: { + input: { + json: { + view: number; + feedId: string; + category?: string | null | undefined; + isPrivate?: boolean | undefined; + }; + }; + output: { + code: 0; + }; + outputFormat: "json"; + status: 200; + }; + }; +}, "/">; +type AppType = typeof _routes; -export { accounts, actions, actionsItemOpenAPISchema, type ActionsModel, actionsOpenAPISchema, actionsRelations, type AppType, type AttachmentsModel, collections, collectionsOpenAPISchema, collectionsRelations, entries, type EntriesModel, entriesOpenAPISchema, entriesRelations, entryReadHistories, type EntryReadHistoriesModel, entryReadHistoriesOpenAPISchema, entryReadHistoriesRelations, type FeedModel, feedPowerTokens, feedPowerTokensOpenAPISchema, feedPowerTokensRelations, feeds, feedsInputSchema, feedsOpenAPISchema, feedsRelations, invitations, languageSchema, type MediaModel, sessions, type SettingsModel, subscriptions, subscriptionsOpenAPISchema, subscriptionsRelations, timeline, timelineOpenAPISchema, timelineRelations, transactions, transactionsOpenAPISchema, transactionsRelations, transactionType, users, usersOpenApiSchema, usersRelations, verificationTokens, wallets, walletsOpenAPISchema, walletsRelations } +export { type ActionsModel, type AppType, type AttachmentsModel, type EntriesModel, type EntryReadHistoriesModel, type FeedModel, type MediaModel, type SettingsModel, accounts, actions, actionsItemOpenAPISchema, actionsOpenAPISchema, actionsRelations, collections, collectionsOpenAPISchema, collectionsRelations, entries, entriesOpenAPISchema, entriesRelations, entryReadHistories, entryReadHistoriesOpenAPISchema, entryReadHistoriesRelations, feedPowerTokens, feedPowerTokensOpenAPISchema, feedPowerTokensRelations, feeds, feedsInputSchema, feedsOpenAPISchema, feedsRelations, invitations, languageSchema, sessions, subscriptions, subscriptionsOpenAPISchema, subscriptionsRelations, timeline, timelineOpenAPISchema, timelineRelations, transactionType, transactions, transactionsOpenAPISchema, transactionsRelations, users, usersOpenApiSchema, usersRelations, verificationTokens, wallets, walletsOpenAPISchema, walletsRelations }; diff --git a/src/renderer/src/atoms/corner-player.ts b/src/renderer/src/atoms/corner-player.ts new file mode 100644 index 0000000000..581456ddd3 --- /dev/null +++ b/src/renderer/src/atoms/corner-player.ts @@ -0,0 +1,30 @@ +import { createAtomHooks } from "@renderer/lib/jotai" +import { getStorageNS } from "@renderer/lib/ns" +import { atomWithStorage } from "jotai/utils" + +type CornerPlayerAtomValue = { + show: boolean + type?: "audio" + entryId?: string + url?: string +} + +const cornerPlayerInitialValue: CornerPlayerAtomValue = { + show: false, +} + +export const [ + cornerPlayerAtom, + useCornerPlayerAtom, + useCornerPlayerAtomValue, + useSetCornerPlayerAtom, + getCornerPlayerAtomValue, + setCornerPlayerAtomValue, +] = createAtomHooks( + atomWithStorage( + getStorageNS("corner-player"), + cornerPlayerInitialValue, + undefined, + { getOnInit: true }, + ), +) diff --git a/src/renderer/src/atoms/player.ts b/src/renderer/src/atoms/player.ts new file mode 100644 index 0000000000..911734109e --- /dev/null +++ b/src/renderer/src/atoms/player.ts @@ -0,0 +1,149 @@ +import { createAtomHooks } from "@renderer/lib/jotai" +import { getStorageNS } from "@renderer/lib/ns" +import { atomWithStorage } from "jotai/utils" + +type PlayerAtomValue = { + show: boolean + type?: "audio" + entryId?: string + src?: string + status?: "playing" | "paused" | "loading" + duration?: number + currentTime?: number + isMute?: boolean + volume?: number + playbackRate?: number +} + +const playerInitialValue: PlayerAtomValue = { + show: false, + volume: 0.8, + playbackRate: 1, +} + +export const [ + playerAtom, + usePlayerAtom, + usePlayerAtomValue, + useSetPlayerAtom, + getPlayerAtomValue, + setPlayerAtomValue, +] = createAtomHooks( + atomWithStorage( + getStorageNS("player"), + playerInitialValue, + undefined, + { getOnInit: true }, + ), +) + +export const Player = { + audio: new Audio(), + currentTimeTimer: null as NodeJS.Timeout | null, + get() { + return getPlayerAtomValue() + }, + play(v: Omit) { + const curV = getPlayerAtomValue() + if (!v.src || (curV.src === v.src && curV.status === "playing")) { + return + } + + setPlayerAtomValue({ + ...curV, + ...v, + status: "loading", + show: true, + }) + + if (this.audio.src !== v.src) { + this.audio.src = v.src + this.audio.currentTime = v.currentTime ?? curV.currentTime ?? 0 + } + this.audio.volume = curV.volume ?? 0.8 + this.audio.playbackRate = curV.playbackRate ?? 1 + + this.currentTimeTimer && clearInterval(this.currentTimeTimer) + this.currentTimeTimer = setInterval(() => { + setPlayerAtomValue({ + ...getPlayerAtomValue(), + currentTime: this.audio.currentTime, + }) + }, 1000) + + return this.audio.play().then(() => { + setPlayerAtomValue({ + ...getPlayerAtomValue(), + status: "playing", + }) + }) + }, + pause() { + const curV = getPlayerAtomValue() + if (curV.status === "paused") { + return + } + + setPlayerAtomValue({ + ...curV, + status: "paused", + currentTime: this.audio.currentTime, + }) + + return this.audio.pause() + }, + togglePlayAndPause() { + const curV = getPlayerAtomValue() + if (curV.status === "playing") { + return this.pause() + } else if (curV.status === "paused") { + return this.play(curV) + } else { + return this.pause() + } + }, + close() { + setPlayerAtomValue({ + show: false, + currentTime: 0, + }) + + this.currentTimeTimer && clearInterval(this.currentTimeTimer) + + return this.audio.pause() + }, + seek(time: number) { + this.audio.currentTime = time + setPlayerAtomValue({ + ...getPlayerAtomValue(), + currentTime: time, + }) + }, + setPlaybackRate(speed: number) { + this.audio.playbackRate = speed + setPlayerAtomValue({ + ...getPlayerAtomValue(), + playbackRate: speed, + }) + }, + back(time: number) { + this.seek(Math.max(this.audio.currentTime - time, 0)) + }, + forward(time: number) { + this.seek(Math.min(this.audio.currentTime + time, this.audio.duration)) + }, + toggleMute() { + this.audio.muted = !this.audio.muted + setPlayerAtomValue({ + ...getPlayerAtomValue(), + isMute: this.audio.muted, + }) + }, + setVolume(volume: number) { + this.audio.volume = volume + setPlayerAtomValue({ + ...getPlayerAtomValue(), + volume, + }) + }, +} diff --git a/src/renderer/src/hono.ts b/src/renderer/src/hono.ts deleted file mode 120000 index bf1d03e73f..0000000000 --- a/src/renderer/src/hono.ts +++ /dev/null @@ -1 +0,0 @@ -../../hono.ts \ No newline at end of file diff --git a/src/renderer/src/hono.ts b/src/renderer/src/hono.ts new file mode 100644 index 0000000000..44c1d801b2 --- /dev/null +++ b/src/renderer/src/hono.ts @@ -0,0 +1,3448 @@ +import * as hono_hono_base from 'hono/hono-base'; +import * as hono_utils_http_status from 'hono/utils/http-status'; +import * as hono from 'hono'; +import * as hono_types from 'hono/types'; +import * as drizzle_orm from 'drizzle-orm'; +import { InferInsertModel } from 'drizzle-orm'; +import * as drizzle_orm_pg_core from 'drizzle-orm/pg-core'; +import * as zod from 'zod'; +import { z } from 'zod'; + +declare const actions: drizzle_orm_pg_core.PgTableWithColumns<{ + name: "actions"; + schema: undefined; + columns: { + userId: drizzle_orm_pg_core.PgColumn<{ + name: "user_id"; + tableName: "actions"; + dataType: "string"; + columnType: "PgText"; + data: string; + driverParam: string; + notNull: true; + hasDefault: false; + isPrimaryKey: true; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: [string, ...string[]]; + baseColumn: never; + generated: undefined; + }, {}, {}>; + rules: drizzle_orm_pg_core.PgColumn<{ + name: "rules"; + tableName: "actions"; + dataType: "array"; + columnType: "PgArray"; + data: unknown[]; + driverParam: string | unknown[]; + notNull: false; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: undefined; + baseColumn: drizzle_orm.Column<{ + name: "rules"; + tableName: "actions"; + dataType: "json"; + columnType: "PgJsonb"; + data: unknown; + driverParam: unknown; + notNull: false; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: undefined; + baseColumn: never; + generated: undefined; + }, object, object>; + generated: undefined; + }, {}, {}>; + }; + dialect: "pg"; +}>; +declare const languageSchema: z.ZodEnum<["en", "ja", "zh-CN", "zh-TW"]>; +declare const actionsItemOpenAPISchema: z.ZodObject<{ + name: z.ZodString; + condition: z.ZodArray; + operator: z.ZodEnum<["contains", "not_contains", "eq", "not_eq", "gt", "lt", "regex"]>; + value: z.ZodString; + }, "strip", z.ZodTypeAny, { + value: string; + field: "title" | "view" | "site_url" | "feed_url"; + operator: "contains" | "not_contains" | "eq" | "not_eq" | "gt" | "lt" | "regex"; + }, { + value: string; + field: "title" | "view" | "site_url" | "feed_url"; + operator: "contains" | "not_contains" | "eq" | "not_eq" | "gt" | "lt" | "regex"; + }>, "many">; + result: z.ZodObject<{ + translation: z.ZodOptional>; + summary: z.ZodOptional; + rewriteRules: z.ZodOptional, "many">>; + blockRules: z.ZodOptional; + operator: z.ZodEnum<["contains", "not_contains", "eq", "not_eq", "gt", "lt", "regex"]>; + value: z.ZodUnion<[z.ZodString, z.ZodNumber]>; + }, "strip", z.ZodTypeAny, { + value: string | number; + field: "title" | "content" | "url" | "all" | "author" | "order"; + operator: "contains" | "not_contains" | "eq" | "not_eq" | "gt" | "lt" | "regex"; + }, { + value: string | number; + field: "title" | "content" | "url" | "all" | "author" | "order"; + operator: "contains" | "not_contains" | "eq" | "not_eq" | "gt" | "lt" | "regex"; + }>, "many">>; + }, "strip", z.ZodTypeAny, { + summary?: boolean | undefined; + translation?: "en" | "ja" | "zh-CN" | "zh-TW" | undefined; + rewriteRules?: { + from: string; + to: string; + }[] | undefined; + blockRules?: { + value: string | number; + field: "title" | "content" | "url" | "all" | "author" | "order"; + operator: "contains" | "not_contains" | "eq" | "not_eq" | "gt" | "lt" | "regex"; + }[] | undefined; + }, { + summary?: boolean | undefined; + translation?: "en" | "ja" | "zh-CN" | "zh-TW" | undefined; + rewriteRules?: { + from: string; + to: string; + }[] | undefined; + blockRules?: { + value: string | number; + field: "title" | "content" | "url" | "all" | "author" | "order"; + operator: "contains" | "not_contains" | "eq" | "not_eq" | "gt" | "lt" | "regex"; + }[] | undefined; + }>; +}, "strip", z.ZodTypeAny, { + name: string; + condition: { + value: string; + field: "title" | "view" | "site_url" | "feed_url"; + operator: "contains" | "not_contains" | "eq" | "not_eq" | "gt" | "lt" | "regex"; + }[]; + result: { + summary?: boolean | undefined; + translation?: "en" | "ja" | "zh-CN" | "zh-TW" | undefined; + rewriteRules?: { + from: string; + to: string; + }[] | undefined; + blockRules?: { + value: string | number; + field: "title" | "content" | "url" | "all" | "author" | "order"; + operator: "contains" | "not_contains" | "eq" | "not_eq" | "gt" | "lt" | "regex"; + }[] | undefined; + }; +}, { + name: string; + condition: { + value: string; + field: "title" | "view" | "site_url" | "feed_url"; + operator: "contains" | "not_contains" | "eq" | "not_eq" | "gt" | "lt" | "regex"; + }[]; + result: { + summary?: boolean | undefined; + translation?: "en" | "ja" | "zh-CN" | "zh-TW" | undefined; + rewriteRules?: { + from: string; + to: string; + }[] | undefined; + blockRules?: { + value: string | number; + field: "title" | "content" | "url" | "all" | "author" | "order"; + operator: "contains" | "not_contains" | "eq" | "not_eq" | "gt" | "lt" | "regex"; + }[] | undefined; + }; +}>; +declare const actionsOpenAPISchema: z.ZodObject, "many">>; +}, "rules">, { + rules: z.ZodNullable; + operator: z.ZodEnum<["contains", "not_contains", "eq", "not_eq", "gt", "lt", "regex"]>; + value: z.ZodString; + }, "strip", z.ZodTypeAny, { + value: string; + field: "title" | "view" | "site_url" | "feed_url"; + operator: "contains" | "not_contains" | "eq" | "not_eq" | "gt" | "lt" | "regex"; + }, { + value: string; + field: "title" | "view" | "site_url" | "feed_url"; + operator: "contains" | "not_contains" | "eq" | "not_eq" | "gt" | "lt" | "regex"; + }>, "many">; + result: z.ZodObject<{ + translation: z.ZodOptional>; + summary: z.ZodOptional; + rewriteRules: z.ZodOptional, "many">>; + blockRules: z.ZodOptional; + operator: z.ZodEnum<["contains", "not_contains", "eq", "not_eq", "gt", "lt", "regex"]>; + value: z.ZodUnion<[z.ZodString, z.ZodNumber]>; + }, "strip", z.ZodTypeAny, { + value: string | number; + field: "title" | "content" | "url" | "all" | "author" | "order"; + operator: "contains" | "not_contains" | "eq" | "not_eq" | "gt" | "lt" | "regex"; + }, { + value: string | number; + field: "title" | "content" | "url" | "all" | "author" | "order"; + operator: "contains" | "not_contains" | "eq" | "not_eq" | "gt" | "lt" | "regex"; + }>, "many">>; + }, "strip", z.ZodTypeAny, { + summary?: boolean | undefined; + translation?: "en" | "ja" | "zh-CN" | "zh-TW" | undefined; + rewriteRules?: { + from: string; + to: string; + }[] | undefined; + blockRules?: { + value: string | number; + field: "title" | "content" | "url" | "all" | "author" | "order"; + operator: "contains" | "not_contains" | "eq" | "not_eq" | "gt" | "lt" | "regex"; + }[] | undefined; + }, { + summary?: boolean | undefined; + translation?: "en" | "ja" | "zh-CN" | "zh-TW" | undefined; + rewriteRules?: { + from: string; + to: string; + }[] | undefined; + blockRules?: { + value: string | number; + field: "title" | "content" | "url" | "all" | "author" | "order"; + operator: "contains" | "not_contains" | "eq" | "not_eq" | "gt" | "lt" | "regex"; + }[] | undefined; + }>; + }, "strip", z.ZodTypeAny, { + name: string; + condition: { + value: string; + field: "title" | "view" | "site_url" | "feed_url"; + operator: "contains" | "not_contains" | "eq" | "not_eq" | "gt" | "lt" | "regex"; + }[]; + result: { + summary?: boolean | undefined; + translation?: "en" | "ja" | "zh-CN" | "zh-TW" | undefined; + rewriteRules?: { + from: string; + to: string; + }[] | undefined; + blockRules?: { + value: string | number; + field: "title" | "content" | "url" | "all" | "author" | "order"; + operator: "contains" | "not_contains" | "eq" | "not_eq" | "gt" | "lt" | "regex"; + }[] | undefined; + }; + }, { + name: string; + condition: { + value: string; + field: "title" | "view" | "site_url" | "feed_url"; + operator: "contains" | "not_contains" | "eq" | "not_eq" | "gt" | "lt" | "regex"; + }[]; + result: { + summary?: boolean | undefined; + translation?: "en" | "ja" | "zh-CN" | "zh-TW" | undefined; + rewriteRules?: { + from: string; + to: string; + }[] | undefined; + blockRules?: { + value: string | number; + field: "title" | "content" | "url" | "all" | "author" | "order"; + operator: "contains" | "not_contains" | "eq" | "not_eq" | "gt" | "lt" | "regex"; + }[] | undefined; + }; + }>, "many">>>; +}>, "strip", z.ZodTypeAny, { + userId: string; + rules?: { + name: string; + condition: { + value: string; + field: "title" | "view" | "site_url" | "feed_url"; + operator: "contains" | "not_contains" | "eq" | "not_eq" | "gt" | "lt" | "regex"; + }[]; + result: { + summary?: boolean | undefined; + translation?: "en" | "ja" | "zh-CN" | "zh-TW" | undefined; + rewriteRules?: { + from: string; + to: string; + }[] | undefined; + blockRules?: { + value: string | number; + field: "title" | "content" | "url" | "all" | "author" | "order"; + operator: "contains" | "not_contains" | "eq" | "not_eq" | "gt" | "lt" | "regex"; + }[] | undefined; + }; + }[] | null | undefined; +}, { + userId: string; + rules?: { + name: string; + condition: { + value: string; + field: "title" | "view" | "site_url" | "feed_url"; + operator: "contains" | "not_contains" | "eq" | "not_eq" | "gt" | "lt" | "regex"; + }[]; + result: { + summary?: boolean | undefined; + translation?: "en" | "ja" | "zh-CN" | "zh-TW" | undefined; + rewriteRules?: { + from: string; + to: string; + }[] | undefined; + blockRules?: { + value: string | number; + field: "title" | "content" | "url" | "all" | "author" | "order"; + operator: "contains" | "not_contains" | "eq" | "not_eq" | "gt" | "lt" | "regex"; + }[] | undefined; + }; + }[] | null | undefined; +}>; +declare const actionsRelations: drizzle_orm.Relations<"actions", { + users: drizzle_orm.One<"user", true>; +}>; +type ActionsModel = z.infer; +type SettingsModel = Exclude["result"], undefined>; + +declare const collections: drizzle_orm_pg_core.PgTableWithColumns<{ + name: "collections"; + schema: undefined; + columns: { + userId: drizzle_orm_pg_core.PgColumn<{ + name: "user_id"; + tableName: "collections"; + dataType: "string"; + columnType: "PgText"; + data: string; + driverParam: string; + notNull: true; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: [string, ...string[]]; + baseColumn: never; + generated: undefined; + }, {}, {}>; + feedId: drizzle_orm_pg_core.PgColumn<{ + name: "feedId"; + tableName: "collections"; + dataType: "string"; + columnType: "PgText"; + data: string; + driverParam: string; + notNull: true; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: [string, ...string[]]; + baseColumn: never; + generated: undefined; + }, {}, {}>; + entryId: drizzle_orm_pg_core.PgColumn<{ + name: "entry_id"; + tableName: "collections"; + dataType: "string"; + columnType: "PgText"; + data: string; + driverParam: string; + notNull: true; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: [string, ...string[]]; + baseColumn: never; + generated: undefined; + }, {}, {}>; + createdAt: drizzle_orm_pg_core.PgColumn<{ + name: "created_at"; + tableName: "collections"; + dataType: "date"; + columnType: "PgTimestamp"; + data: Date; + driverParam: string; + notNull: true; + hasDefault: true; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: undefined; + baseColumn: never; + generated: undefined; + }, {}, {}>; + view: drizzle_orm_pg_core.PgColumn<{ + name: "view"; + tableName: "collections"; + dataType: "number"; + columnType: "PgSmallInt"; + data: number; + driverParam: string | number; + notNull: true; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: undefined; + baseColumn: never; + generated: undefined; + }, {}, {}>; + }; + dialect: "pg"; +}>; +declare const collectionsOpenAPISchema: zod.ZodObject<{ + userId: zod.ZodString; + feedId: zod.ZodString; + entryId: zod.ZodString; + createdAt: zod.ZodString; + view: zod.ZodNumber; +}, zod.UnknownKeysParam, zod.ZodTypeAny, { + view: number; + userId: string; + createdAt: string; + feedId: string; + entryId: string; +}, { + view: number; + userId: string; + createdAt: string; + feedId: string; + entryId: string; +}>; +declare const collectionsRelations: drizzle_orm.Relations<"collections", { + users: drizzle_orm.One<"user", true>; + entries: drizzle_orm.One<"entries", true>; + feeds: drizzle_orm.One<"feeds", true>; +}>; + +type MediaModel = { + url: string; + type: "photo" | "video"; + preview_image_url?: string; +}; +type AttachmentsModel = { + url: string; + duration_in_seconds?: number; + mime_type?: string; + size_in_bytes?: number; + title?: string; +}; +declare const entries: drizzle_orm_pg_core.PgTableWithColumns<{ + name: "entries"; + schema: undefined; + columns: { + id: drizzle_orm_pg_core.PgColumn<{ + name: "id"; + tableName: "entries"; + dataType: "string"; + columnType: "PgText"; + data: string; + driverParam: string; + notNull: true; + hasDefault: true; + isPrimaryKey: true; + isAutoincrement: false; + hasRuntimeDefault: true; + enumValues: [string, ...string[]]; + baseColumn: never; + generated: undefined; + }, {}, {}>; + feedId: drizzle_orm_pg_core.PgColumn<{ + name: "feed_id"; + tableName: "entries"; + dataType: "string"; + columnType: "PgText"; + data: string; + driverParam: string; + notNull: true; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: [string, ...string[]]; + baseColumn: never; + generated: undefined; + }, {}, {}>; + title: drizzle_orm_pg_core.PgColumn<{ + name: "title"; + tableName: "entries"; + dataType: "string"; + columnType: "PgText"; + data: string; + driverParam: string; + notNull: false; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: [string, ...string[]]; + baseColumn: never; + generated: undefined; + }, {}, {}>; + url: drizzle_orm_pg_core.PgColumn<{ + name: "url"; + tableName: "entries"; + dataType: "string"; + columnType: "PgText"; + data: string; + driverParam: string; + notNull: false; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: [string, ...string[]]; + baseColumn: never; + generated: undefined; + }, {}, {}>; + content: drizzle_orm_pg_core.PgColumn<{ + name: "content"; + tableName: "entries"; + dataType: "string"; + columnType: "PgText"; + data: string; + driverParam: string; + notNull: false; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: [string, ...string[]]; + baseColumn: never; + generated: undefined; + }, {}, {}>; + description: drizzle_orm_pg_core.PgColumn<{ + name: "description"; + tableName: "entries"; + dataType: "string"; + columnType: "PgText"; + data: string; + driverParam: string; + notNull: false; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: [string, ...string[]]; + baseColumn: never; + generated: undefined; + }, {}, {}>; + guid: drizzle_orm_pg_core.PgColumn<{ + name: "guid"; + tableName: "entries"; + dataType: "string"; + columnType: "PgText"; + data: string; + driverParam: string; + notNull: true; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: [string, ...string[]]; + baseColumn: never; + generated: undefined; + }, {}, {}>; + author: drizzle_orm_pg_core.PgColumn<{ + name: "author"; + tableName: "entries"; + dataType: "string"; + columnType: "PgText"; + data: string; + driverParam: string; + notNull: false; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: [string, ...string[]]; + baseColumn: never; + generated: undefined; + }, {}, {}>; + authorUrl: drizzle_orm_pg_core.PgColumn<{ + name: "author_url"; + tableName: "entries"; + dataType: "string"; + columnType: "PgText"; + data: string; + driverParam: string; + notNull: false; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: [string, ...string[]]; + baseColumn: never; + generated: undefined; + }, {}, {}>; + authorAvatar: drizzle_orm_pg_core.PgColumn<{ + name: "author_avatar"; + tableName: "entries"; + dataType: "string"; + columnType: "PgText"; + data: string; + driverParam: string; + notNull: false; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: [string, ...string[]]; + baseColumn: never; + generated: undefined; + }, {}, {}>; + changedAt: drizzle_orm_pg_core.PgColumn<{ + name: "changed_at"; + tableName: "entries"; + dataType: "date"; + columnType: "PgTimestamp"; + data: Date; + driverParam: string; + notNull: true; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: undefined; + baseColumn: never; + generated: undefined; + }, {}, {}>; + publishedAt: drizzle_orm_pg_core.PgColumn<{ + name: "published_at"; + tableName: "entries"; + dataType: "date"; + columnType: "PgTimestamp"; + data: Date; + driverParam: string; + notNull: true; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: undefined; + baseColumn: never; + generated: undefined; + }, {}, {}>; + media: drizzle_orm_pg_core.PgColumn<{ + name: "media"; + tableName: "entries"; + dataType: "array"; + columnType: "PgArray"; + data: unknown[]; + driverParam: string | unknown[]; + notNull: false; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: undefined; + baseColumn: drizzle_orm.Column<{ + name: "media"; + tableName: "entries"; + dataType: "json"; + columnType: "PgJsonb"; + data: unknown; + driverParam: unknown; + notNull: false; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: undefined; + baseColumn: never; + generated: undefined; + }, object, object>; + generated: undefined; + }, {}, {}>; + categories: drizzle_orm_pg_core.PgColumn<{ + name: "categories"; + tableName: "entries"; + dataType: "array"; + columnType: "PgArray"; + data: string[]; + driverParam: string | string[]; + notNull: false; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: [string, ...string[]]; + baseColumn: drizzle_orm.Column<{ + name: "categories"; + tableName: "entries"; + dataType: "string"; + columnType: "PgText"; + data: string; + driverParam: string; + notNull: false; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: [string, ...string[]]; + baseColumn: never; + generated: undefined; + }, object, object>; + generated: undefined; + }, {}, {}>; + attachments: drizzle_orm_pg_core.PgColumn<{ + name: "attachments"; + tableName: "entries"; + dataType: "array"; + columnType: "PgArray"; + data: unknown[]; + driverParam: string | unknown[]; + notNull: false; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: undefined; + baseColumn: drizzle_orm.Column<{ + name: "attachments"; + tableName: "entries"; + dataType: "json"; + columnType: "PgJsonb"; + data: unknown; + driverParam: unknown; + notNull: false; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: undefined; + baseColumn: never; + generated: undefined; + }, object, object>; + generated: undefined; + }, {}, {}>; + }; + dialect: "pg"; +}>; +declare const entriesOpenAPISchema: z.ZodObject; + url: z.ZodNullable; + content: z.ZodNullable; + description: z.ZodNullable; + guid: z.ZodString; + author: z.ZodNullable; + authorUrl: z.ZodNullable; + authorAvatar: z.ZodNullable; + changedAt: z.ZodString; + publishedAt: z.ZodString; + media: z.ZodNullable, "many">>; + categories: z.ZodNullable>; + attachments: z.ZodNullable, "many">>; +}, "media" | "attachments">, { + attachments: z.ZodNullable; + mime_type: z.ZodOptional; + size_in_bytes: z.ZodOptional; + title: z.ZodOptional; + }, "strip", z.ZodTypeAny, { + url: string; + title?: string | undefined; + duration_in_seconds?: number | undefined; + mime_type?: string | undefined; + size_in_bytes?: number | undefined; + }, { + url: string; + title?: string | undefined; + duration_in_seconds?: number | undefined; + mime_type?: string | undefined; + size_in_bytes?: number | undefined; + }>, "many">>>; + media: z.ZodNullable; + preview_image_url: z.ZodOptional; + }, "strip", z.ZodTypeAny, { + type: "photo" | "video"; + url: string; + preview_image_url?: string | undefined; + }, { + type: "photo" | "video"; + url: string; + preview_image_url?: string | undefined; + }>, "many">>>; +}>, "strip", z.ZodTypeAny, { + description: string | null; + title: string | null; + content: string | null; + id: string; + url: string | null; + feedId: string; + guid: string; + author: string | null; + authorUrl: string | null; + authorAvatar: string | null; + changedAt: string; + publishedAt: string; + categories: string[] | null; + media?: { + type: "photo" | "video"; + url: string; + preview_image_url?: string | undefined; + }[] | null | undefined; + attachments?: { + url: string; + title?: string | undefined; + duration_in_seconds?: number | undefined; + mime_type?: string | undefined; + size_in_bytes?: number | undefined; + }[] | null | undefined; +}, { + description: string | null; + title: string | null; + content: string | null; + id: string; + url: string | null; + feedId: string; + guid: string; + author: string | null; + authorUrl: string | null; + authorAvatar: string | null; + changedAt: string; + publishedAt: string; + categories: string[] | null; + media?: { + type: "photo" | "video"; + url: string; + preview_image_url?: string | undefined; + }[] | null | undefined; + attachments?: { + url: string; + title?: string | undefined; + duration_in_seconds?: number | undefined; + mime_type?: string | undefined; + size_in_bytes?: number | undefined; + }[] | null | undefined; +}>; +declare const entriesRelations: drizzle_orm.Relations<"entries", { + feeds: drizzle_orm.One<"feeds", true>; + collections: drizzle_orm.Many<"collections">; + feedPowerTokens: drizzle_orm.One<"feedPowerTokens", true>; + entryReadHistories: drizzle_orm.One<"entryReadHistories", true>; +}>; +type EntriesModel = InferInsertModel & { + attachments?: AttachmentsModel[] | null; + media?: MediaModel[] | null; +}; +declare const entryReadHistories: drizzle_orm_pg_core.PgTableWithColumns<{ + name: "entryReadHistories"; + schema: undefined; + columns: { + entryId: drizzle_orm_pg_core.PgColumn<{ + name: "entry_id"; + tableName: "entryReadHistories"; + dataType: "string"; + columnType: "PgText"; + data: string; + driverParam: string; + notNull: true; + hasDefault: false; + isPrimaryKey: true; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: [string, ...string[]]; + baseColumn: never; + generated: undefined; + }, {}, {}>; + userIds: drizzle_orm_pg_core.PgColumn<{ + name: "user_ids"; + tableName: "entryReadHistories"; + dataType: "array"; + columnType: "PgArray"; + data: string[]; + driverParam: string | string[]; + notNull: true; + hasDefault: true; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: [string, ...string[]]; + baseColumn: drizzle_orm.Column<{ + name: "user_ids"; + tableName: "entryReadHistories"; + dataType: "string"; + columnType: "PgText"; + data: string; + driverParam: string; + notNull: false; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: [string, ...string[]]; + baseColumn: never; + generated: undefined; + }, object, object>; + generated: undefined; + }, {}, {}>; + readCount: drizzle_orm_pg_core.PgColumn<{ + name: "read_count"; + tableName: "entryReadHistories"; + dataType: "number"; + columnType: "PgInteger"; + data: number; + driverParam: string | number; + notNull: true; + hasDefault: true; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: undefined; + baseColumn: never; + generated: undefined; + }, {}, {}>; + }; + dialect: "pg"; +}>; +declare const entryReadHistoriesRelations: drizzle_orm.Relations<"entryReadHistories", { + entry: drizzle_orm.One<"entries", true>; +}>; +type EntryReadHistoriesModel = InferInsertModel; +declare const entryReadHistoriesOpenAPISchema: z.ZodObject<{ + entryId: z.ZodString; + userIds: z.ZodArray; + readCount: z.ZodNumber; +}, z.UnknownKeysParam, z.ZodTypeAny, { + entryId: string; + userIds: string[]; + readCount: number; +}, { + entryId: string; + userIds: string[]; + readCount: number; +}>; + +declare const feeds: drizzle_orm_pg_core.PgTableWithColumns<{ + name: "feeds"; + schema: undefined; + columns: { + id: drizzle_orm_pg_core.PgColumn<{ + name: "id"; + tableName: "feeds"; + dataType: "string"; + columnType: "PgText"; + data: string; + driverParam: string; + notNull: true; + hasDefault: true; + isPrimaryKey: true; + isAutoincrement: false; + hasRuntimeDefault: true; + enumValues: [string, ...string[]]; + baseColumn: never; + generated: undefined; + }, {}, {}>; + url: drizzle_orm_pg_core.PgColumn<{ + name: "url"; + tableName: "feeds"; + dataType: "string"; + columnType: "PgText"; + data: string; + driverParam: string; + notNull: true; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: [string, ...string[]]; + baseColumn: never; + generated: undefined; + }, {}, {}>; + title: drizzle_orm_pg_core.PgColumn<{ + name: "title"; + tableName: "feeds"; + dataType: "string"; + columnType: "PgText"; + data: string; + driverParam: string; + notNull: false; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: [string, ...string[]]; + baseColumn: never; + generated: undefined; + }, {}, {}>; + description: drizzle_orm_pg_core.PgColumn<{ + name: "description"; + tableName: "feeds"; + dataType: "string"; + columnType: "PgText"; + data: string; + driverParam: string; + notNull: false; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: [string, ...string[]]; + baseColumn: never; + generated: undefined; + }, {}, {}>; + siteUrl: drizzle_orm_pg_core.PgColumn<{ + name: "site_url"; + tableName: "feeds"; + dataType: "string"; + columnType: "PgText"; + data: string; + driverParam: string; + notNull: false; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: [string, ...string[]]; + baseColumn: never; + generated: undefined; + }, {}, {}>; + image: drizzle_orm_pg_core.PgColumn<{ + name: "image"; + tableName: "feeds"; + dataType: "string"; + columnType: "PgText"; + data: string; + driverParam: string; + notNull: false; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: [string, ...string[]]; + baseColumn: never; + generated: undefined; + }, {}, {}>; + checkedAt: drizzle_orm_pg_core.PgColumn<{ + name: "checked_at"; + tableName: "feeds"; + dataType: "date"; + columnType: "PgTimestamp"; + data: Date; + driverParam: string; + notNull: true; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: undefined; + baseColumn: never; + generated: undefined; + }, {}, {}>; + lastModifiedHeader: drizzle_orm_pg_core.PgColumn<{ + name: "last_modified_header"; + tableName: "feeds"; + dataType: "string"; + columnType: "PgText"; + data: string; + driverParam: string; + notNull: false; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: [string, ...string[]]; + baseColumn: never; + generated: undefined; + }, {}, {}>; + etagHeader: drizzle_orm_pg_core.PgColumn<{ + name: "etag_header"; + tableName: "feeds"; + dataType: "string"; + columnType: "PgText"; + data: string; + driverParam: string; + notNull: false; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: [string, ...string[]]; + baseColumn: never; + generated: undefined; + }, {}, {}>; + ttl: drizzle_orm_pg_core.PgColumn<{ + name: "ttl"; + tableName: "feeds"; + dataType: "number"; + columnType: "PgInteger"; + data: number; + driverParam: string | number; + notNull: false; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: undefined; + baseColumn: never; + generated: undefined; + }, {}, {}>; + errorMessage: drizzle_orm_pg_core.PgColumn<{ + name: "error_message"; + tableName: "feeds"; + dataType: "string"; + columnType: "PgText"; + data: string; + driverParam: string; + notNull: false; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: [string, ...string[]]; + baseColumn: never; + generated: undefined; + }, {}, {}>; + errorAt: drizzle_orm_pg_core.PgColumn<{ + name: "error_at"; + tableName: "feeds"; + dataType: "date"; + columnType: "PgTimestamp"; + data: Date; + driverParam: string; + notNull: false; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: undefined; + baseColumn: never; + generated: undefined; + }, {}, {}>; + ownerUserId: drizzle_orm_pg_core.PgColumn<{ + name: "owner_user_id"; + tableName: "feeds"; + dataType: "string"; + columnType: "PgText"; + data: string; + driverParam: string; + notNull: false; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: [string, ...string[]]; + baseColumn: never; + generated: undefined; + }, {}, {}>; + }; + dialect: "pg"; +}>; +declare const feedsOpenAPISchema: zod.ZodObject<{ + id: zod.ZodString; + url: zod.ZodString; + title: zod.ZodNullable; + description: zod.ZodNullable; + siteUrl: zod.ZodNullable; + image: zod.ZodNullable; + checkedAt: zod.ZodString; + lastModifiedHeader: zod.ZodNullable; + etagHeader: zod.ZodNullable; + ttl: zod.ZodNullable; + errorMessage: zod.ZodNullable; + errorAt: zod.ZodNullable; + ownerUserId: zod.ZodNullable; +}, zod.UnknownKeysParam, zod.ZodTypeAny, { + description: string | null; + title: string | null; + id: string; + image: string | null; + url: string; + siteUrl: string | null; + checkedAt: string; + lastModifiedHeader: string | null; + etagHeader: string | null; + ttl: number | null; + errorMessage: string | null; + errorAt: string | null; + ownerUserId: string | null; +}, { + description: string | null; + title: string | null; + id: string; + image: string | null; + url: string; + siteUrl: string | null; + checkedAt: string; + lastModifiedHeader: string | null; + etagHeader: string | null; + ttl: number | null; + errorMessage: string | null; + errorAt: string | null; + ownerUserId: string | null; +}>; +declare const feedsInputSchema: zod.ZodObject<{ + description: zod.ZodOptional>; + title: zod.ZodOptional>; + id: zod.ZodOptional; + image: zod.ZodOptional>; + url: zod.ZodString; + siteUrl: zod.ZodOptional>; + checkedAt: zod.ZodString; + lastModifiedHeader: zod.ZodOptional>; + etagHeader: zod.ZodOptional>; + ttl: zod.ZodOptional>; + errorMessage: zod.ZodOptional>; + errorAt: zod.ZodOptional>; + ownerUserId: zod.ZodOptional>; +}, zod.UnknownKeysParam, zod.ZodTypeAny, { + url: string; + checkedAt: string; + description?: string | null | undefined; + title?: string | null | undefined; + id?: string | undefined; + image?: string | null | undefined; + siteUrl?: string | null | undefined; + lastModifiedHeader?: string | null | undefined; + etagHeader?: string | null | undefined; + ttl?: number | null | undefined; + errorMessage?: string | null | undefined; + errorAt?: string | null | undefined; + ownerUserId?: string | null | undefined; +}, { + url: string; + checkedAt: string; + description?: string | null | undefined; + title?: string | null | undefined; + id?: string | undefined; + image?: string | null | undefined; + siteUrl?: string | null | undefined; + lastModifiedHeader?: string | null | undefined; + etagHeader?: string | null | undefined; + ttl?: number | null | undefined; + errorMessage?: string | null | undefined; + errorAt?: string | null | undefined; + ownerUserId?: string | null | undefined; +}>; +declare const feedsRelations: drizzle_orm.Relations<"feeds", { + subscriptions: drizzle_orm.Many<"subscriptions">; + entries: drizzle_orm.Many<"entries">; + owner: drizzle_orm.One<"user", false>; +}>; +type FeedModel = InferInsertModel; + +declare const invitations: drizzle_orm_pg_core.PgTableWithColumns<{ + name: "invitations"; + schema: undefined; + columns: { + code: drizzle_orm_pg_core.PgColumn<{ + name: "code"; + tableName: "invitations"; + dataType: "string"; + columnType: "PgText"; + data: string; + driverParam: string; + notNull: true; + hasDefault: false; + isPrimaryKey: true; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: [string, ...string[]]; + baseColumn: never; + generated: undefined; + }, {}, {}>; + createdAt: drizzle_orm_pg_core.PgColumn<{ + name: "created_at"; + tableName: "invitations"; + dataType: "date"; + columnType: "PgTimestamp"; + data: Date; + driverParam: string; + notNull: false; + hasDefault: true; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: undefined; + baseColumn: never; + generated: undefined; + }, {}, {}>; + fromUserId: drizzle_orm_pg_core.PgColumn<{ + name: "from_user_id"; + tableName: "invitations"; + dataType: "string"; + columnType: "PgText"; + data: string; + driverParam: string; + notNull: true; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: [string, ...string[]]; + baseColumn: never; + generated: undefined; + }, {}, {}>; + toUserId: drizzle_orm_pg_core.PgColumn<{ + name: "to_user_id"; + tableName: "invitations"; + dataType: "string"; + columnType: "PgText"; + data: string; + driverParam: string; + notNull: false; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: [string, ...string[]]; + baseColumn: never; + generated: undefined; + }, {}, {}>; + }; + dialect: "pg"; +}>; + +declare const subscriptions: drizzle_orm_pg_core.PgTableWithColumns<{ + name: "subscriptions"; + schema: undefined; + columns: { + userId: drizzle_orm_pg_core.PgColumn<{ + name: "user_id"; + tableName: "subscriptions"; + dataType: "string"; + columnType: "PgText"; + data: string; + driverParam: string; + notNull: true; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: [string, ...string[]]; + baseColumn: never; + generated: undefined; + }, {}, {}>; + feedId: drizzle_orm_pg_core.PgColumn<{ + name: "feed_id"; + tableName: "subscriptions"; + dataType: "string"; + columnType: "PgText"; + data: string; + driverParam: string; + notNull: true; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: [string, ...string[]]; + baseColumn: never; + generated: undefined; + }, {}, {}>; + view: drizzle_orm_pg_core.PgColumn<{ + name: "view"; + tableName: "subscriptions"; + dataType: "number"; + columnType: "PgSmallInt"; + data: number; + driverParam: string | number; + notNull: true; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: undefined; + baseColumn: never; + generated: undefined; + }, {}, {}>; + category: drizzle_orm_pg_core.PgColumn<{ + name: "category"; + tableName: "subscriptions"; + dataType: "string"; + columnType: "PgText"; + data: string; + driverParam: string; + notNull: false; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: [string, ...string[]]; + baseColumn: never; + generated: undefined; + }, {}, {}>; + title: drizzle_orm_pg_core.PgColumn<{ + name: "title"; + tableName: "subscriptions"; + dataType: "string"; + columnType: "PgText"; + data: string; + driverParam: string; + notNull: false; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: [string, ...string[]]; + baseColumn: never; + generated: undefined; + }, {}, {}>; + isPrivate: drizzle_orm_pg_core.PgColumn<{ + name: "is_private"; + tableName: "subscriptions"; + dataType: "boolean"; + columnType: "PgBoolean"; + data: boolean; + driverParam: boolean; + notNull: true; + hasDefault: true; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: undefined; + baseColumn: never; + generated: undefined; + }, {}, {}>; + }; + dialect: "pg"; +}>; +declare const subscriptionsOpenAPISchema: zod.ZodObject<{ + userId: zod.ZodString; + feedId: zod.ZodString; + view: zod.ZodNumber; + category: zod.ZodNullable; + title: zod.ZodNullable; + isPrivate: zod.ZodBoolean; +}, zod.UnknownKeysParam, zod.ZodTypeAny, { + title: string | null; + view: number; + userId: string; + feedId: string; + category: string | null; + isPrivate: boolean; +}, { + title: string | null; + view: number; + userId: string; + feedId: string; + category: string | null; + isPrivate: boolean; +}>; +declare const subscriptionsRelations: drizzle_orm.Relations<"subscriptions", { + users: drizzle_orm.One<"user", true>; + feeds: drizzle_orm.One<"feeds", true>; +}>; + +declare const timeline: drizzle_orm_pg_core.PgTableWithColumns<{ + name: "timeline"; + schema: undefined; + columns: { + userId: drizzle_orm_pg_core.PgColumn<{ + name: "user_id"; + tableName: "timeline"; + dataType: "string"; + columnType: "PgText"; + data: string; + driverParam: string; + notNull: true; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: [string, ...string[]]; + baseColumn: never; + generated: undefined; + }, {}, {}>; + feedId: drizzle_orm_pg_core.PgColumn<{ + name: "feedId"; + tableName: "timeline"; + dataType: "string"; + columnType: "PgText"; + data: string; + driverParam: string; + notNull: true; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: [string, ...string[]]; + baseColumn: never; + generated: undefined; + }, {}, {}>; + entryId: drizzle_orm_pg_core.PgColumn<{ + name: "entry_id"; + tableName: "timeline"; + dataType: "string"; + columnType: "PgText"; + data: string; + driverParam: string; + notNull: true; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: [string, ...string[]]; + baseColumn: never; + generated: undefined; + }, {}, {}>; + publishedAt: drizzle_orm_pg_core.PgColumn<{ + name: "published_at"; + tableName: "timeline"; + dataType: "date"; + columnType: "PgTimestamp"; + data: Date; + driverParam: string; + notNull: true; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: undefined; + baseColumn: never; + generated: undefined; + }, {}, {}>; + view: drizzle_orm_pg_core.PgColumn<{ + name: "view"; + tableName: "timeline"; + dataType: "number"; + columnType: "PgSmallInt"; + data: number; + driverParam: string | number; + notNull: true; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: undefined; + baseColumn: never; + generated: undefined; + }, {}, {}>; + read: drizzle_orm_pg_core.PgColumn<{ + name: "read"; + tableName: "timeline"; + dataType: "boolean"; + columnType: "PgBoolean"; + data: boolean; + driverParam: boolean; + notNull: false; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: undefined; + baseColumn: never; + generated: undefined; + }, {}, {}>; + }; + dialect: "pg"; +}>; +declare const timelineOpenAPISchema: zod.ZodObject<{ + userId: zod.ZodString; + feedId: zod.ZodString; + entryId: zod.ZodString; + publishedAt: zod.ZodString; + view: zod.ZodNumber; + read: zod.ZodNullable; +}, zod.UnknownKeysParam, zod.ZodTypeAny, { + view: number; + userId: string; + feedId: string; + read: boolean | null; + publishedAt: string; + entryId: string; +}, { + view: number; + userId: string; + feedId: string; + read: boolean | null; + publishedAt: string; + entryId: string; +}>; +declare const timelineRelations: drizzle_orm.Relations<"timeline", { + entries: drizzle_orm.One<"entries", true>; + feeds: drizzle_orm.One<"feeds", true>; + collections: drizzle_orm.One<"collections", true>; +}>; + +declare const users: drizzle_orm_pg_core.PgTableWithColumns<{ + name: "user"; + schema: undefined; + columns: { + id: drizzle_orm_pg_core.PgColumn<{ + name: "id"; + tableName: "user"; + dataType: "string"; + columnType: "PgText"; + data: string; + driverParam: string; + notNull: true; + hasDefault: true; + isPrimaryKey: true; + isAutoincrement: false; + hasRuntimeDefault: true; + enumValues: [string, ...string[]]; + baseColumn: never; + generated: undefined; + }, {}, {}>; + name: drizzle_orm_pg_core.PgColumn<{ + name: "name"; + tableName: "user"; + dataType: "string"; + columnType: "PgText"; + data: string; + driverParam: string; + notNull: false; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: [string, ...string[]]; + baseColumn: never; + generated: undefined; + }, {}, {}>; + email: drizzle_orm_pg_core.PgColumn<{ + name: "email"; + tableName: "user"; + dataType: "string"; + columnType: "PgText"; + data: string; + driverParam: string; + notNull: true; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: [string, ...string[]]; + baseColumn: never; + generated: undefined; + }, {}, {}>; + emailVerified: drizzle_orm_pg_core.PgColumn<{ + name: "emailVerified"; + tableName: "user"; + dataType: "date"; + columnType: "PgTimestamp"; + data: Date; + driverParam: string; + notNull: false; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: undefined; + baseColumn: never; + generated: undefined; + }, {}, {}>; + image: drizzle_orm_pg_core.PgColumn<{ + name: "image"; + tableName: "user"; + dataType: "string"; + columnType: "PgText"; + data: string; + driverParam: string; + notNull: false; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: [string, ...string[]]; + baseColumn: never; + generated: undefined; + }, {}, {}>; + handle: drizzle_orm_pg_core.PgColumn<{ + name: "handle"; + tableName: "user"; + dataType: "string"; + columnType: "PgText"; + data: string; + driverParam: string; + notNull: false; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: [string, ...string[]]; + baseColumn: never; + generated: undefined; + }, {}, {}>; + createdAt: drizzle_orm_pg_core.PgColumn<{ + name: "created_at"; + tableName: "user"; + dataType: "date"; + columnType: "PgTimestamp"; + data: Date; + driverParam: string; + notNull: true; + hasDefault: true; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: undefined; + baseColumn: never; + generated: undefined; + }, {}, {}>; + }; + dialect: "pg"; +}>; +declare const usersOpenApiSchema: z.ZodObject<{ + id: z.ZodString; + name: z.ZodNullable; + email: z.ZodString; + emailVerified: z.ZodNullable; + image: z.ZodNullable; + handle: z.ZodNullable; + createdAt: z.ZodDate; +}, z.UnknownKeysParam, z.ZodTypeAny, { + name: string | null; + id: string; + email: string; + emailVerified: string | null; + image: string | null; + handle: string | null; + createdAt: Date; +}, { + name: string | null; + id: string; + email: string; + emailVerified: string | null; + image: string | null; + handle: string | null; + createdAt: Date; +}>; +declare const accounts: drizzle_orm_pg_core.PgTableWithColumns<{ + name: "account"; + schema: undefined; + columns: { + userId: drizzle_orm_pg_core.PgColumn<{ + name: "userId"; + tableName: "account"; + dataType: "string"; + columnType: "PgText"; + data: string; + driverParam: string; + notNull: true; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: [string, ...string[]]; + baseColumn: never; + generated: undefined; + }, {}, {}>; + type: drizzle_orm_pg_core.PgColumn<{ + name: "type"; + tableName: "account"; + dataType: "string"; + columnType: "PgText"; + data: string; + driverParam: string; + notNull: true; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: [string, ...string[]]; + baseColumn: never; + generated: undefined; + }, {}, {}>; + provider: drizzle_orm_pg_core.PgColumn<{ + name: "provider"; + tableName: "account"; + dataType: "string"; + columnType: "PgText"; + data: string; + driverParam: string; + notNull: true; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: [string, ...string[]]; + baseColumn: never; + generated: undefined; + }, {}, {}>; + providerAccountId: drizzle_orm_pg_core.PgColumn<{ + name: "providerAccountId"; + tableName: "account"; + dataType: "string"; + columnType: "PgText"; + data: string; + driverParam: string; + notNull: true; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: [string, ...string[]]; + baseColumn: never; + generated: undefined; + }, {}, {}>; + refresh_token: drizzle_orm_pg_core.PgColumn<{ + name: "refresh_token"; + tableName: "account"; + dataType: "string"; + columnType: "PgText"; + data: string; + driverParam: string; + notNull: false; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: [string, ...string[]]; + baseColumn: never; + generated: undefined; + }, {}, {}>; + access_token: drizzle_orm_pg_core.PgColumn<{ + name: "access_token"; + tableName: "account"; + dataType: "string"; + columnType: "PgText"; + data: string; + driverParam: string; + notNull: false; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: [string, ...string[]]; + baseColumn: never; + generated: undefined; + }, {}, {}>; + expires_at: drizzle_orm_pg_core.PgColumn<{ + name: "expires_at"; + tableName: "account"; + dataType: "number"; + columnType: "PgInteger"; + data: number; + driverParam: string | number; + notNull: false; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: undefined; + baseColumn: never; + generated: undefined; + }, {}, {}>; + token_type: drizzle_orm_pg_core.PgColumn<{ + name: "token_type"; + tableName: "account"; + dataType: "string"; + columnType: "PgText"; + data: string; + driverParam: string; + notNull: false; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: [string, ...string[]]; + baseColumn: never; + generated: undefined; + }, {}, {}>; + scope: drizzle_orm_pg_core.PgColumn<{ + name: "scope"; + tableName: "account"; + dataType: "string"; + columnType: "PgText"; + data: string; + driverParam: string; + notNull: false; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: [string, ...string[]]; + baseColumn: never; + generated: undefined; + }, {}, {}>; + id_token: drizzle_orm_pg_core.PgColumn<{ + name: "id_token"; + tableName: "account"; + dataType: "string"; + columnType: "PgText"; + data: string; + driverParam: string; + notNull: false; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: [string, ...string[]]; + baseColumn: never; + generated: undefined; + }, {}, {}>; + session_state: drizzle_orm_pg_core.PgColumn<{ + name: "session_state"; + tableName: "account"; + dataType: "string"; + columnType: "PgText"; + data: string; + driverParam: string; + notNull: false; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: [string, ...string[]]; + baseColumn: never; + generated: undefined; + }, {}, {}>; + }; + dialect: "pg"; +}>; +declare const sessions: drizzle_orm_pg_core.PgTableWithColumns<{ + name: "session"; + schema: undefined; + columns: { + sessionToken: drizzle_orm_pg_core.PgColumn<{ + name: "sessionToken"; + tableName: "session"; + dataType: "string"; + columnType: "PgText"; + data: string; + driverParam: string; + notNull: true; + hasDefault: false; + isPrimaryKey: true; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: [string, ...string[]]; + baseColumn: never; + generated: undefined; + }, {}, {}>; + userId: drizzle_orm_pg_core.PgColumn<{ + name: "userId"; + tableName: "session"; + dataType: "string"; + columnType: "PgText"; + data: string; + driverParam: string; + notNull: true; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: [string, ...string[]]; + baseColumn: never; + generated: undefined; + }, {}, {}>; + expires: drizzle_orm_pg_core.PgColumn<{ + name: "expires"; + tableName: "session"; + dataType: "date"; + columnType: "PgTimestamp"; + data: Date; + driverParam: string; + notNull: true; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: undefined; + baseColumn: never; + generated: undefined; + }, {}, {}>; + }; + dialect: "pg"; +}>; +declare const verificationTokens: drizzle_orm_pg_core.PgTableWithColumns<{ + name: "verificationToken"; + schema: undefined; + columns: { + identifier: drizzle_orm_pg_core.PgColumn<{ + name: "identifier"; + tableName: "verificationToken"; + dataType: "string"; + columnType: "PgText"; + data: string; + driverParam: string; + notNull: true; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: [string, ...string[]]; + baseColumn: never; + generated: undefined; + }, {}, {}>; + token: drizzle_orm_pg_core.PgColumn<{ + name: "token"; + tableName: "verificationToken"; + dataType: "string"; + columnType: "PgText"; + data: string; + driverParam: string; + notNull: true; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: [string, ...string[]]; + baseColumn: never; + generated: undefined; + }, {}, {}>; + expires: drizzle_orm_pg_core.PgColumn<{ + name: "expires"; + tableName: "verificationToken"; + dataType: "date"; + columnType: "PgTimestamp"; + data: Date; + driverParam: string; + notNull: true; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: undefined; + baseColumn: never; + generated: undefined; + }, {}, {}>; + }; + dialect: "pg"; +}>; +declare const usersRelations: drizzle_orm.Relations<"user", { + subscriptions: drizzle_orm.Many<"subscriptions">; + collections: drizzle_orm.Many<"collections">; + actions: drizzle_orm.One<"actions", true>; + wallets: drizzle_orm.One<"wallets", true>; + feeds: drizzle_orm.Many<"feeds">; +}>; + +declare const wallets: drizzle_orm_pg_core.PgTableWithColumns<{ + name: "wallets"; + schema: undefined; + columns: { + addressIndex: drizzle_orm_pg_core.PgColumn<{ + name: "address_index"; + tableName: "wallets"; + dataType: "number"; + columnType: "PgInteger"; + data: number; + driverParam: string | number; + notNull: true; + hasDefault: true; + isPrimaryKey: true; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: undefined; + baseColumn: never; + generated: drizzle_orm.GeneratedColumnConfig & { + as: any; + type: "always"; + }; + }, {}, {}>; + address: drizzle_orm_pg_core.PgColumn<{ + name: "address"; + tableName: "wallets"; + dataType: "string"; + columnType: "PgText"; + data: string; + driverParam: string; + notNull: false; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: [string, ...string[]]; + baseColumn: never; + generated: undefined; + }, {}, {}>; + userId: drizzle_orm_pg_core.PgColumn<{ + name: "userId"; + tableName: "wallets"; + dataType: "string"; + columnType: "PgText"; + data: string; + driverParam: string; + notNull: true; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: [string, ...string[]]; + baseColumn: never; + generated: undefined; + }, {}, {}>; + createdAt: drizzle_orm_pg_core.PgColumn<{ + name: "created_at"; + tableName: "wallets"; + dataType: "date"; + columnType: "PgTimestamp"; + data: Date; + driverParam: string; + notNull: true; + hasDefault: true; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: undefined; + baseColumn: never; + generated: undefined; + }, {}, {}>; + dailyPowerToken: drizzle_orm_pg_core.PgColumn<{ + name: "daily_power_token"; + tableName: "wallets"; + dataType: "string"; + columnType: "PgNumeric"; + data: string; + driverParam: string; + notNull: true; + hasDefault: true; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: undefined; + baseColumn: never; + generated: undefined; + }, {}, {}>; + cashablePowerToken: drizzle_orm_pg_core.PgColumn<{ + name: "cashable_power_token"; + tableName: "wallets"; + dataType: "string"; + columnType: "PgNumeric"; + data: string; + driverParam: string; + notNull: true; + hasDefault: true; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: undefined; + baseColumn: never; + generated: undefined; + }, {}, {}>; + }; + dialect: "pg"; +}>; +declare const walletsOpenAPISchema: zod.ZodObject<{ + addressIndex: zod.ZodNumber; + address: zod.ZodNullable; + userId: zod.ZodString; + createdAt: zod.ZodString; + dailyPowerToken: zod.ZodString; + cashablePowerToken: zod.ZodString; +}, zod.UnknownKeysParam, zod.ZodTypeAny, { + userId: string; + createdAt: string; + address: string | null; + addressIndex: number; + dailyPowerToken: string; + cashablePowerToken: string; +}, { + userId: string; + createdAt: string; + address: string | null; + addressIndex: number; + dailyPowerToken: string; + cashablePowerToken: string; +}>; +declare const walletsRelations: drizzle_orm.Relations<"wallets", { + user: drizzle_orm.One<"user", true>; + transactionsFrom: drizzle_orm.Many<"transactions">; + transactionTo: drizzle_orm.Many<"transactions">; +}>; +declare const transactionType: drizzle_orm_pg_core.PgEnum<["tip", "mint", "burn", "withdraw"]>; +declare const transactions: drizzle_orm_pg_core.PgTableWithColumns<{ + name: "transactions"; + schema: undefined; + columns: { + hash: drizzle_orm_pg_core.PgColumn<{ + name: "hash"; + tableName: "transactions"; + dataType: "string"; + columnType: "PgText"; + data: string; + driverParam: string; + notNull: true; + hasDefault: false; + isPrimaryKey: true; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: [string, ...string[]]; + baseColumn: never; + generated: undefined; + }, {}, {}>; + type: drizzle_orm_pg_core.PgColumn<{ + name: "type"; + tableName: "transactions"; + dataType: "string"; + columnType: "PgEnumColumn"; + data: "tip" | "mint" | "burn" | "withdraw"; + driverParam: string; + notNull: true; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: ["tip", "mint", "burn", "withdraw"]; + baseColumn: never; + generated: undefined; + }, {}, {}>; + fromUserId: drizzle_orm_pg_core.PgColumn<{ + name: "from_user_id"; + tableName: "transactions"; + dataType: "string"; + columnType: "PgText"; + data: string; + driverParam: string; + notNull: false; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: [string, ...string[]]; + baseColumn: never; + generated: undefined; + }, {}, {}>; + toUserId: drizzle_orm_pg_core.PgColumn<{ + name: "to_user_id"; + tableName: "transactions"; + dataType: "string"; + columnType: "PgText"; + data: string; + driverParam: string; + notNull: false; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: [string, ...string[]]; + baseColumn: never; + generated: undefined; + }, {}, {}>; + toFeedId: drizzle_orm_pg_core.PgColumn<{ + name: "to_feed_id"; + tableName: "transactions"; + dataType: "string"; + columnType: "PgText"; + data: string; + driverParam: string; + notNull: false; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: [string, ...string[]]; + baseColumn: never; + generated: undefined; + }, {}, {}>; + powerToken: drizzle_orm_pg_core.PgColumn<{ + name: "power_token"; + tableName: "transactions"; + dataType: "string"; + columnType: "PgNumeric"; + data: string; + driverParam: string; + notNull: true; + hasDefault: true; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: undefined; + baseColumn: never; + generated: undefined; + }, {}, {}>; + createdAt: drizzle_orm_pg_core.PgColumn<{ + name: "created_at"; + tableName: "transactions"; + dataType: "date"; + columnType: "PgTimestamp"; + data: Date; + driverParam: string; + notNull: true; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: undefined; + baseColumn: never; + generated: undefined; + }, {}, {}>; + comment: drizzle_orm_pg_core.PgColumn<{ + name: "comment"; + tableName: "transactions"; + dataType: "string"; + columnType: "PgText"; + data: string; + driverParam: string; + notNull: false; + hasDefault: false; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: [string, ...string[]]; + baseColumn: never; + generated: undefined; + }, {}, {}>; + }; + dialect: "pg"; +}>; +declare const transactionsOpenAPISchema: zod.ZodObject<{ + hash: zod.ZodString; + type: zod.ZodEnum<["tip", "mint", "burn", "withdraw"]>; + fromUserId: zod.ZodNullable; + toUserId: zod.ZodNullable; + toFeedId: zod.ZodNullable; + powerToken: zod.ZodString; + createdAt: zod.ZodString; + comment: zod.ZodNullable; +}, zod.UnknownKeysParam, zod.ZodTypeAny, { + type: "tip" | "mint" | "burn" | "withdraw"; + createdAt: string; + hash: string; + fromUserId: string | null; + toUserId: string | null; + toFeedId: string | null; + powerToken: string; + comment: string | null; +}, { + type: "tip" | "mint" | "burn" | "withdraw"; + createdAt: string; + hash: string; + fromUserId: string | null; + toUserId: string | null; + toFeedId: string | null; + powerToken: string; + comment: string | null; +}>; +declare const transactionsRelations: drizzle_orm.Relations<"transactions", { + fromUser: drizzle_orm.One<"user", false>; + toUser: drizzle_orm.One<"user", false>; + toFeed: drizzle_orm.One<"feeds", false>; + fromWallet: drizzle_orm.One<"wallets", false>; + toWallet: drizzle_orm.One<"wallets", false>; +}>; +declare const feedPowerTokens: drizzle_orm_pg_core.PgTableWithColumns<{ + name: "feedPowerTokens"; + schema: undefined; + columns: { + feedId: drizzle_orm_pg_core.PgColumn<{ + name: "feed_id"; + tableName: "feedPowerTokens"; + dataType: "string"; + columnType: "PgText"; + data: string; + driverParam: string; + notNull: true; + hasDefault: false; + isPrimaryKey: true; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: [string, ...string[]]; + baseColumn: never; + generated: undefined; + }, {}, {}>; + powerToken: drizzle_orm_pg_core.PgColumn<{ + name: "power_token"; + tableName: "feedPowerTokens"; + dataType: "string"; + columnType: "PgNumeric"; + data: string; + driverParam: string; + notNull: true; + hasDefault: true; + isPrimaryKey: false; + isAutoincrement: false; + hasRuntimeDefault: false; + enumValues: undefined; + baseColumn: never; + generated: undefined; + }, {}, {}>; + }; + dialect: "pg"; +}>; +declare const feedPowerTokensOpenAPISchema: zod.ZodObject<{ + feedId: zod.ZodString; + powerToken: zod.ZodString; +}, zod.UnknownKeysParam, zod.ZodTypeAny, { + feedId: string; + powerToken: string; +}, { + feedId: string; + powerToken: string; +}>; +declare const feedPowerTokensRelations: drizzle_orm.Relations<"feedPowerTokens", { + feed: drizzle_orm.One<"feeds", true>; +}>; + +declare const _routes: hono_hono_base.HonoBase}`]: { + input: Partial; + output: any; + outputFormat: string; + status: hono_utils_http_status.StatusCode; + }; + }; +} & { + [x: `/entries/read-histories/${string}`]: { + [x: `$${Lowercase}`]: { + input: Partial; + output: any; + outputFormat: string; + status: hono_utils_http_status.StatusCode; + }; + }; + [x: `/entries/check-new/${string}`]: { + [x: `$${Lowercase}`]: { + input: Partial; + output: any; + outputFormat: string; + status: hono_utils_http_status.StatusCode; + }; + }; + "/entries": { + $post: { + input: { + json: { + view?: number | undefined; + feedId?: string | undefined; + feedIdList?: string[] | undefined; + read?: boolean | undefined; + publishedAfter?: string | undefined; + limit?: number | undefined; + collected?: boolean | undefined; + }; + }; + output: { + code: 0; + total: number; + data?: { + entries: { + description: string | null; + title: string | null; + id: string; + url: string | null; + guid: string; + author: string | null; + authorUrl: string | null; + authorAvatar: string | null; + changedAt: string; + publishedAt: string; + categories: string[] | null; + media?: { + type: "photo" | "video"; + url: string; + preview_image_url?: string | undefined; + }[] | null | undefined; + attachments?: { + url: string; + title?: string | undefined; + duration_in_seconds?: number | undefined; + mime_type?: string | undefined; + size_in_bytes?: number | undefined; + }[] | null | undefined; + }; + feeds: { + description: string | null; + title: string | null; + id: string; + image: string | null; + url: string; + siteUrl: string | null; + checkedAt: string; + lastModifiedHeader: string | null; + etagHeader: string | null; + ttl: number | null; + errorMessage: string | null; + errorAt: string | null; + ownerUserId: string | null; + }; + read: boolean | null; + collections?: { + createdAt: string; + } | undefined; + settings?: { + summary?: boolean | undefined; + translation?: "en" | "ja" | "zh-CN" | "zh-TW" | undefined; + rewriteRules?: { + from: string; + to: string; + }[] | undefined; + } | undefined; + }[] | undefined; + }; + outputFormat: "json"; + status: 200; + }; + $get: { + input: { + query: { + id: string; + }; + }; + output: { + code: 0; + data?: { + entries: { + description: string | null; + title: string | null; + content: string | null; + id: string; + url: string | null; + guid: string; + author: string | null; + authorUrl: string | null; + authorAvatar: string | null; + changedAt: string; + publishedAt: string; + categories: string[] | null; + media?: { + type: "photo" | "video"; + url: string; + preview_image_url?: string | undefined; + }[] | null | undefined; + attachments?: { + url: string; + title?: string | undefined; + duration_in_seconds?: number | undefined; + mime_type?: string | undefined; + size_in_bytes?: number | undefined; + }[] | null | undefined; + }; + feeds: { + description: string | null; + title: string | null; + id: string; + image: string | null; + url: string; + siteUrl: string | null; + checkedAt: string; + lastModifiedHeader: string | null; + etagHeader: string | null; + ttl: number | null; + errorMessage: string | null; + errorAt: string | null; + ownerUserId: string | null; + }; + read: boolean | null; + users: { + [x: string]: { + name: string | null; + id: string; + image: string | null; + handle: string | null; + }; + }; + entryReadHistories: { + userIds: string[]; + readCount: number; + } | null; + collections: { + createdAt: string; + }; + settings?: { + summary?: boolean | undefined; + translation?: "en" | "ja" | "zh-CN" | "zh-TW" | undefined; + rewriteRules?: { + from: string; + to: string; + }[] | undefined; + } | undefined; + } | undefined; + }; + outputFormat: "json"; + status: 200; + }; + }; + "/entries/preview": { + $get: { + input: { + query: { + id: string; + }; + }; + output: { + data: { + description: string | null; + title: string | null; + content: string | null; + id: string; + url: string | null; + feedId: string; + guid: string; + author: string | null; + authorUrl: string | null; + authorAvatar: string | null; + changedAt: string; + publishedAt: string; + categories: string[] | null; + media?: { + type: "photo" | "video"; + url: string; + preview_image_url?: string | undefined; + }[] | null | undefined; + attachments?: { + url: string; + title?: string | undefined; + duration_in_seconds?: number | undefined; + mime_type?: string | undefined; + size_in_bytes?: number | undefined; + }[] | null | undefined; + }[]; + code: 0; + }; + outputFormat: "json"; + status: 200; + }; + }; +} & { + "/subscriptions": { + $get: { + input: { + query: { + view?: string | undefined; + userId?: string | undefined; + }; + }; + output: { + data: { + title: string | null; + view: number; + userId: string; + feeds: { + description: string | null; + title: string | null; + id: string; + image: string | null; + url: string; + siteUrl: string | null; + checkedAt: string; + lastModifiedHeader: string | null; + etagHeader: string | null; + ttl: number | null; + errorMessage: string | null; + errorAt: string | null; + ownerUserId: string | null; + }; + feedId: string; + category: string | null; + isPrivate: boolean; + }[]; + code: 0; + }; + outputFormat: "json"; + status: 200; + }; + $post: { + input: { + json: { + view: number; + url: string; + category?: string | null | undefined; + isPrivate?: boolean | undefined; + }; + }; + output: { + code: 0; + }; + outputFormat: "json"; + status: 200; + }; + $delete: { + input: { + json: { + url?: string | undefined; + feedId?: string | undefined; + }; + }; + output: { + code: 0; + }; + outputFormat: "json"; + status: 200; + }; + $patch: { + input: { + json: { + view: number; + feedId: string; + category?: string | null | undefined; + isPrivate?: boolean | undefined; + }; + }; + output: { + code: 0; + }; + outputFormat: "json"; + status: 200; + }; + }; +}, "/">; +type AppType = typeof _routes; + +export { type ActionsModel, type AppType, type AttachmentsModel, type EntriesModel, type EntryReadHistoriesModel, type FeedModel, type MediaModel, type SettingsModel, accounts, actions, actionsItemOpenAPISchema, actionsOpenAPISchema, actionsRelations, collections, collectionsOpenAPISchema, collectionsRelations, entries, entriesOpenAPISchema, entriesRelations, entryReadHistories, entryReadHistoriesOpenAPISchema, entryReadHistoriesRelations, feedPowerTokens, feedPowerTokensOpenAPISchema, feedPowerTokensRelations, feeds, feedsInputSchema, feedsOpenAPISchema, feedsRelations, invitations, languageSchema, sessions, subscriptions, subscriptionsOpenAPISchema, subscriptionsRelations, timeline, timelineOpenAPISchema, timelineRelations, transactionType, transactions, transactionsOpenAPISchema, transactionsRelations, users, usersOpenApiSchema, usersRelations, verificationTokens, wallets, walletsOpenAPISchema, walletsRelations }; diff --git a/src/renderer/src/modules/entry-column/list-item-template.tsx b/src/renderer/src/modules/entry-column/list-item-template.tsx index eae91798eb..116e8e72af 100644 --- a/src/renderer/src/modules/entry-column/list-item-template.tsx +++ b/src/renderer/src/modules/entry-column/list-item-template.tsx @@ -1,3 +1,4 @@ +import { Player, usePlayerAtomValue } from "@renderer/atoms/player" import { FeedIcon } from "@renderer/components/feed-icon" import { RelativeTime } from "@renderer/components/ui/datetime" import { Media } from "@renderer/components/ui/media" @@ -8,6 +9,7 @@ import { cn } from "@renderer/lib/utils" import { EntryTranslation } from "@renderer/modules/entry-column/translation" import { useEntry } from "@renderer/store/entry/hooks" import { useFeedById } from "@renderer/store/feed" +import { useState } from "react" import { ReactVirtuosoItemPlaceholder } from "../../components/ui/placeholder" import { StarIcon } from "./star-icon" @@ -33,6 +35,8 @@ export function ListItem({ const feed = useFeedById(entry?.feedId) || entryPreview?.feeds + const [isHovered, setIsHovered] = useState(false) + // NOTE: prevent 0 height element, react virtuoso will not stop render any more if (!entry || !feed) return @@ -41,13 +45,15 @@ export function ListItem({ entry.entries.publishedAt return (
setIsHovered(true)} + onMouseLeave={() => setIsHovered(false)} className={cn( "relative flex py-3 pl-3 pr-2", !asRead && "before:absolute before:-left-0.5 before:top-[18px] before:block before:size-2 before:rounded-full before:bg-theme-accent", )} > - + {!withAudio && }
)} - {withAudio && entry.entries?.attachments?.[0].url && ( -
+ + {withAudio && entry.entries?.attachments?.[0].url && ( + } + isHovered={isHovered} + /> + )} + {withDetails && entry.entries.media?.[0] && ( ) } + +function AudioCover({ + entryId, + src, + durationInSeconds, + feedIcon, + isHovered, +}: { + entryId: string + src: string + durationInSeconds?: number + feedIcon: React.ReactNode + isHovered: boolean +}) { + const playerValue = usePlayerAtomValue() + + const isMeActive = playerValue.src === src + const shouldShowPlayButton = isHovered || isMeActive + + const estimatedMins = durationInSeconds ? Math.floor(durationInSeconds / 60) : undefined + + const handleClickPlay = () => { + if (!isMeActive) { + // switch this to play + Player.play({ + type: "audio", + entryId, + src, + duration: durationInSeconds, + currentTime: 0, + }) + } else { + // switch between play and pause + Player.togglePlayAndPause() + } + } + + return ( +
+ {feedIcon} + +
+ +
+ +
+ {estimatedMins ? `${estimatedMins} m` : "- m"} +
+
+ ) +} diff --git a/src/renderer/src/modules/feed-column/corner-player.tsx b/src/renderer/src/modules/feed-column/corner-player.tsx new file mode 100644 index 0000000000..4b0b70c3f3 --- /dev/null +++ b/src/renderer/src/modules/feed-column/corner-player.tsx @@ -0,0 +1,233 @@ +import * as Slider from "@radix-ui/react-slider" +import { Player, usePlayerAtomValue } from "@renderer/atoms/player" +import { FeedIcon } from "@renderer/components/feed-icon" +import { softBouncePreset } from "@renderer/components/ui/constants/spring" +import { Tooltip, TooltipContent, TooltipTrigger } from "@renderer/components/ui/tooltip" +import { cn } from "@renderer/lib/utils" +import { useEntry } from "@renderer/store/entry" +import { useFeedById } from "@renderer/store/feed" +import dayjs from "dayjs" +import { AnimatePresence, m } from "framer-motion" +import { useEffect, useState } from "react" +import Marquee from "react-fast-marquee" + +const handleClickPlay = () => { + Player.togglePlayAndPause() +} + +export const CornerPlayer = () => { + const playerValue = usePlayerAtomValue() + const entry = useEntry(playerValue.entryId) + const feed = useFeedById(entry?.feedId) + + const { currentTime = 0, duration = 0 } = playerValue + const [controlledCurrentTime, setControlledCurrentTime] = useState(currentTime) + const [isDraggingProgress, setIsDraggingProgress] = useState(false) + useEffect(() => { + if (isDraggingProgress) return + setControlledCurrentTime(currentTime) + }, [currentTime, isDraggingProgress]) + + const currentTimeIndicator = dayjs().startOf("y").second(controlledCurrentTime).format("mm:ss") + const remainingTimeIndicator = dayjs().startOf("y").second(duration - controlledCurrentTime).format("mm:ss") + + return ( + + {playerValue.show && entry && feed && ( + + {/* advanced controls */} +
+
+ Player.close()} + label="Close" + /> +
+
+ } + labelDelayDuration={0} + /> + Player.toggleMute()} + label={} + labelDelayDuration={0} + /> + Player.back(10)} + label="Back 10s" + /> + Player.forward(10)} + label="Forward 10s" + /> +
+
+ +
+ {/* play cover */} +
+ +
+ +
+
+ +
+ + {entry.entries.title} + +
{feed.title}
+ + {/* progress control */} +
+
+
{currentTimeIndicator}
+
+ - + {remainingTimeIndicator} +
+
+ + {/* slider */} + setIsDraggingProgress(true)} + onPointerUp={() => setIsDraggingProgress(false)} + onValueChange={(value) => setControlledCurrentTime(value[0])} + onValueCommit={(value) => Player.seek(value[0])} + > + + + + + {/* indicator */} + + +
+
+
+
+ )} +
+ ) +} + +const ActionIcon = ({ + className, + onClick, + label, + labelDelayDuration = 700, +}: { + className?: string + onClick?: () => void + label: React.ReactNode + labelDelayDuration?: number +}) => ( + + + + + {label} + +) + +const VolumeSlider = () => { + const playerValue = usePlayerAtomValue() + + return ( + Player.setVolume(value[0])} + > + + + + + + ) +} + +const PlaybackRateSelector = () => { + const playerValue = usePlayerAtomValue() + + return ( +
+ {[0.5, 0.75, 1, 1.25, 1.5, 2].map((rate) => ( + + ))} + +
+ ) +} diff --git a/src/renderer/src/pages/(main)/layout.tsx b/src/renderer/src/pages/(main)/layout.tsx index 3bff19c749..927924881b 100644 --- a/src/renderer/src/pages/(main)/layout.tsx +++ b/src/renderer/src/pages/(main)/layout.tsx @@ -13,6 +13,7 @@ import { NetworkStatusIndicator } from "@renderer/modules/app/NetworkStatusIndic import { LoginModalContent } from "@renderer/modules/auth/LoginModalContent" import { FeedColumn } from "@renderer/modules/feed-column" import { AutoUpdater } from "@renderer/modules/feed-column/auto-updater" +import { CornerPlayer } from "@renderer/modules/feed-column/corner-player" import { SearchCmdK } from "@renderer/modules/search/cmdk" import type { PropsWithChildren } from "react" import { useRef } from "react" @@ -33,6 +34,9 @@ export function Component() { > + + + {APP_VERSION?.[0] === "0" && (
Early Access @@ -42,6 +46,7 @@ export function Component() { ""}
)} + {ELECTRON && }