@follow-app/client-sdk
Version:
TypeScript client SDK for Follow RSS Server API
39 lines (30 loc) • 1.05 kB
text/typescript
import type { users } from "@folo-services/drizzle"
import type { InferSelectModel } from "drizzle-orm"
import type { FeedIdRequest, SerializedModel, SuccessResponse } from "../../types"
// Database types
type User = SerializedModel<InferSelectModel<typeof users>>
// Request types
export interface GetFeedBoostLevelRequest extends FeedIdRequest {}
export interface BoostFeedRequest extends FeedIdRequest {
amount: string
TOTPCode?: string
}
export interface GetFeedBoostersRequest extends FeedIdRequest {}
// Response types
export interface FeedBoostLevelData {
monthlyBoostCost: number
boostCount: number
level: number
remainingBoostsToLevelUp: number
lastValidBoost: {
hash: string | null
expiresAt: string
} | null
}
export interface BoostFeedData {
transactionHash: string
expiresAt: string
}
export type GetFeedBoostLevelResponse = SuccessResponse<FeedBoostLevelData>
export type BoostFeedResponse = SuccessResponse<BoostFeedData>
export type GetFeedBoostersResponse = SuccessResponse<Omit<User, "email">[]>