import { apiQueryClient, type paths, useResourceQuery } from "@/shared/api"; const portfolioQueryPolicy = { staleTime: 30_000, } as const; type Portfolio = NonNullable< paths["/api/v1/brokerage-accounts/{accountId}/portfolio"]["get"]["responses"][200]["content"]["application/json"]["data"] >; function portfolioQueryOptions(accountId?: string) { return apiQueryClient.queryOptions( "get", "/api/v1/brokerage-accounts/{accountId}/portfolio", { params: { path: { accountId: accountId ?? "" } } }, ); } function usePortfolio(accountId?: string) { return useResourceQuery({ meta: { accessGroup: "brokerage" }, ...portfolioQueryOptions(accountId), enabled: Boolean(accountId), ...portfolioQueryPolicy, }); } export { type Portfolio, portfolioQueryOptions, usePortfolio };