@singi-labs/sifa-sdk 0.7.0 → 0.7.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{index-IDRpze8y.d.cts → index-CpM21_Oy.d.cts} +1 -1
- package/dist/{index-IDRpze8y.d.ts → index-CpM21_Oy.d.ts} +1 -1
- package/dist/index.cjs +1 -1
- package/dist/index.d.cts +2 -2
- package/dist/index.d.ts +2 -2
- package/dist/index.js +1 -1
- package/dist/query/index.cjs +423 -1
- package/dist/query/index.cjs.map +1 -1
- package/dist/query/index.d.cts +363 -3
- package/dist/query/index.d.ts +363 -3
- package/dist/query/index.js +396 -2
- package/dist/query/index.js.map +1 -1
- package/package.json +1 -1
package/dist/query/index.d.cts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
2
|
import { ReactNode } from 'react';
|
|
3
|
-
import {
|
|
3
|
+
import { f as Profile } from '../index-CpM21_Oy.cjs';
|
|
4
4
|
import * as _tanstack_react_query from '@tanstack/react-query';
|
|
5
5
|
import { UseQueryOptions, UseMutationOptions } from '@tanstack/react-query';
|
|
6
6
|
|
|
@@ -100,6 +100,12 @@ declare function useSifaConfig(): SifaApiConfig;
|
|
|
100
100
|
* Server-callable (Next.js RSC) and client-callable (Expo, browser).
|
|
101
101
|
*/
|
|
102
102
|
declare function fetchProfile(config: SifaApiConfig, handleOrDid: string, options?: ApiFetchOptions): Promise<Profile | null>;
|
|
103
|
+
/**
|
|
104
|
+
* Public AT Fund link for a profile, if one is configured. Returns `null`
|
|
105
|
+
* on any error or when the response payload's `url` field is missing or
|
|
106
|
+
* non-string.
|
|
107
|
+
*/
|
|
108
|
+
declare function fetchAtFundLink(config: SifaApiConfig, did: string, options?: ApiFetchOptions): Promise<string | null>;
|
|
103
109
|
|
|
104
110
|
/** Result returned by record-write mutations (create / update / delete). */
|
|
105
111
|
interface WriteResult {
|
|
@@ -122,6 +128,59 @@ interface CreateResult extends WriteResult {
|
|
|
122
128
|
*/
|
|
123
129
|
declare function createPosition(config: SifaApiConfig, data: Record<string, unknown>, options?: ApiFetchOptions): Promise<CreateResult>;
|
|
124
130
|
|
|
131
|
+
/** Public, aggregate stats shown on the homepage and similar surfaces. */
|
|
132
|
+
interface StatsResponse {
|
|
133
|
+
profileCount: number;
|
|
134
|
+
avatars: string[];
|
|
135
|
+
atproto: {
|
|
136
|
+
userCount: number;
|
|
137
|
+
growthPerSecond: number;
|
|
138
|
+
timestamp: number;
|
|
139
|
+
} | null;
|
|
140
|
+
}
|
|
141
|
+
/**
|
|
142
|
+
* Homepage stats (profile count, avatar samples, ATproto growth). Public
|
|
143
|
+
* endpoint -- safe to cache. Returns `null` on any error so callers can
|
|
144
|
+
* render a graceful empty state.
|
|
145
|
+
*/
|
|
146
|
+
declare function fetchStats(config: SifaApiConfig, options?: ApiFetchOptions): Promise<StatsResponse | null>;
|
|
147
|
+
|
|
148
|
+
/** Catalog entry describing an ATproto app that Sifa surfaces activity for. */
|
|
149
|
+
interface AppRegistryEntry {
|
|
150
|
+
id: string;
|
|
151
|
+
name: string;
|
|
152
|
+
category: string;
|
|
153
|
+
collectionPrefixes: string[];
|
|
154
|
+
scanCollections: string[];
|
|
155
|
+
urlPattern?: string;
|
|
156
|
+
color: string;
|
|
157
|
+
}
|
|
158
|
+
/** Compact app representation returned by the hidden-apps endpoint. */
|
|
159
|
+
interface HiddenApp {
|
|
160
|
+
id: string;
|
|
161
|
+
name: string;
|
|
162
|
+
category: string;
|
|
163
|
+
}
|
|
164
|
+
interface FetchHiddenAppsOptions extends ApiFetchOptions {
|
|
165
|
+
/**
|
|
166
|
+
* Pass the caller's `Cookie` header on Next.js RSC server-side calls.
|
|
167
|
+
* `credentials: 'include'` does NOT propagate browser cookies in RSC,
|
|
168
|
+
* so authenticated server fetches must forward the header explicitly.
|
|
169
|
+
*/
|
|
170
|
+
cookieHeader?: string;
|
|
171
|
+
}
|
|
172
|
+
/**
|
|
173
|
+
* Public app registry shown across discovery surfaces. Heavily cached.
|
|
174
|
+
* Returns `[]` on any error.
|
|
175
|
+
*/
|
|
176
|
+
declare function fetchAppsRegistry(config: SifaApiConfig, options?: ApiFetchOptions): Promise<AppRegistryEntry[]>;
|
|
177
|
+
/**
|
|
178
|
+
* Apps the authenticated user has chosen to hide from their activity feed.
|
|
179
|
+
* Requires an authenticated session. Returns `[]` on any error (including
|
|
180
|
+
* the unauthenticated case).
|
|
181
|
+
*/
|
|
182
|
+
declare function fetchHiddenApps(config: SifaApiConfig, options?: FetchHiddenAppsOptions): Promise<HiddenApp[]>;
|
|
183
|
+
|
|
125
184
|
/** Profile entry returned by the search endpoint. */
|
|
126
185
|
interface ProfileSearchResult {
|
|
127
186
|
did?: string;
|
|
@@ -298,6 +357,229 @@ declare function fetchFollowing(config: SifaApiConfig, opts?: {
|
|
|
298
357
|
limit?: number;
|
|
299
358
|
} & ApiFetchOptions): Promise<FollowingResponse>;
|
|
300
359
|
|
|
360
|
+
interface QuotedPostAuthor {
|
|
361
|
+
did: string;
|
|
362
|
+
handle: string;
|
|
363
|
+
displayName?: string;
|
|
364
|
+
avatar?: string;
|
|
365
|
+
}
|
|
366
|
+
interface QuotedPostImage {
|
|
367
|
+
thumb: string;
|
|
368
|
+
fullsize: string;
|
|
369
|
+
alt?: string;
|
|
370
|
+
}
|
|
371
|
+
interface QuotedPostView {
|
|
372
|
+
uri: string;
|
|
373
|
+
cid: string;
|
|
374
|
+
author: QuotedPostAuthor;
|
|
375
|
+
text: string;
|
|
376
|
+
createdAt: string;
|
|
377
|
+
images?: QuotedPostImage[];
|
|
378
|
+
}
|
|
379
|
+
type QuotedPostResult = {
|
|
380
|
+
status: 'ok';
|
|
381
|
+
record: QuotedPostView;
|
|
382
|
+
} | {
|
|
383
|
+
status: 'deleted';
|
|
384
|
+
uri: string;
|
|
385
|
+
} | {
|
|
386
|
+
status: 'unavailable';
|
|
387
|
+
uri: string;
|
|
388
|
+
};
|
|
389
|
+
/** Max URIs per request to `POST /api/quoted-posts/resolve` (mirrors server cap). */
|
|
390
|
+
declare const QUOTED_POSTS_BATCH_MAX = 20;
|
|
391
|
+
interface ResolveQuotedPostsOptions extends ApiFetchOptions {
|
|
392
|
+
/** Cookie header for Next.js RSC server-side calls; ignored in browsers. */
|
|
393
|
+
cookieHeader?: string;
|
|
394
|
+
}
|
|
395
|
+
/**
|
|
396
|
+
* Resolve a batch of AT-URIs to their quoted-post snapshots via the Sifa AppView.
|
|
397
|
+
*
|
|
398
|
+
* Auto-deduplicates input URIs and splits requests into chunks of
|
|
399
|
+
* {@link QUOTED_POSTS_BATCH_MAX} so callers can pass an arbitrary-length array.
|
|
400
|
+
* Each chunk is fired in parallel. The server caches results in Valkey, so
|
|
401
|
+
* repeated calls for the same URI are cheap.
|
|
402
|
+
*
|
|
403
|
+
* Returns a map of `uri -> QuotedPostResult`. URIs that fail (network error,
|
|
404
|
+
* non-2xx, or the server omitting them) are absent from the map; the caller
|
|
405
|
+
* should render a skeleton or tombstone for those.
|
|
406
|
+
*/
|
|
407
|
+
declare function resolveQuotedPosts(config: SifaApiConfig, uris: string[], options?: ResolveQuotedPostsOptions): Promise<Record<string, QuotedPostResult>>;
|
|
408
|
+
|
|
409
|
+
interface HeatmapDay {
|
|
410
|
+
date: string;
|
|
411
|
+
total: number;
|
|
412
|
+
apps: {
|
|
413
|
+
appId: string;
|
|
414
|
+
count: number;
|
|
415
|
+
}[];
|
|
416
|
+
}
|
|
417
|
+
interface HeatmapResponse {
|
|
418
|
+
days: HeatmapDay[];
|
|
419
|
+
appTotals: {
|
|
420
|
+
appId: string;
|
|
421
|
+
appName: string;
|
|
422
|
+
total: number;
|
|
423
|
+
}[];
|
|
424
|
+
thresholds: [number, number, number, number];
|
|
425
|
+
}
|
|
426
|
+
interface ActivityItem {
|
|
427
|
+
uri: string;
|
|
428
|
+
cid: string;
|
|
429
|
+
collection: string;
|
|
430
|
+
rkey: string;
|
|
431
|
+
record: Record<string, unknown>;
|
|
432
|
+
appId: string;
|
|
433
|
+
appName: string;
|
|
434
|
+
category: string;
|
|
435
|
+
indexedAt: string;
|
|
436
|
+
/**
|
|
437
|
+
* Set by the server when an `app.bsky.embed.record` quote was already
|
|
438
|
+
* resolved upstream (AppView path). Mutually exclusive with `quotedPostUri`.
|
|
439
|
+
*/
|
|
440
|
+
quotedPost?: QuotedPostResult;
|
|
441
|
+
/**
|
|
442
|
+
* Set by the server when an `app.bsky.embed.record` quote needs client-side
|
|
443
|
+
* resolution (PDS path). Pass batches to {@link resolveQuotedPosts}.
|
|
444
|
+
* Mutually exclusive with `quotedPost`.
|
|
445
|
+
*/
|
|
446
|
+
quotedPostUri?: string;
|
|
447
|
+
}
|
|
448
|
+
interface ActivityTeaserResponse {
|
|
449
|
+
items: ActivityItem[];
|
|
450
|
+
blueskyGated?: boolean;
|
|
451
|
+
backfillPending?: boolean;
|
|
452
|
+
failedApps?: string[];
|
|
453
|
+
}
|
|
454
|
+
interface ActivityFeedResponse {
|
|
455
|
+
items: ActivityItem[];
|
|
456
|
+
cursor: string | null;
|
|
457
|
+
hasMore: boolean;
|
|
458
|
+
availableCategories?: string[];
|
|
459
|
+
blueskyGated?: boolean;
|
|
460
|
+
failedApps?: string[];
|
|
461
|
+
}
|
|
462
|
+
/**
|
|
463
|
+
* Per-day activity counts for a profile across all ATproto apps. Returns
|
|
464
|
+
* `null` on any error so callers can render a graceful empty state.
|
|
465
|
+
*/
|
|
466
|
+
declare function fetchHeatmapData(config: SifaApiConfig, handleOrDid: string, days: number, options?: ApiFetchOptions): Promise<HeatmapResponse | null>;
|
|
467
|
+
interface FetchActivityTeaserOptions extends ApiFetchOptions {
|
|
468
|
+
/**
|
|
469
|
+
* Pass the caller's `Cookie` header on Next.js RSC server-side calls.
|
|
470
|
+
* Required for authenticated server fetches because `credentials: 'include'`
|
|
471
|
+
* does not propagate browser cookies in RSC.
|
|
472
|
+
*/
|
|
473
|
+
cookieHeader?: string;
|
|
474
|
+
}
|
|
475
|
+
/**
|
|
476
|
+
* Recent activity teaser for a profile (homepage-sized slice). Caps the
|
|
477
|
+
* upstream wait so the SSR path cannot hang. Returns `null` on any error.
|
|
478
|
+
*/
|
|
479
|
+
declare function fetchActivityTeaser(config: SifaApiConfig, handleOrDid: string, options?: FetchActivityTeaserOptions): Promise<ActivityTeaserResponse | null>;
|
|
480
|
+
interface FetchActivityFeedOptions extends ApiFetchOptions {
|
|
481
|
+
category?: string;
|
|
482
|
+
limit?: number;
|
|
483
|
+
cursor?: string;
|
|
484
|
+
cookieHeader?: string;
|
|
485
|
+
}
|
|
486
|
+
/**
|
|
487
|
+
* Paginated activity feed for a profile. Always fresh (`cache: 'no-store'`).
|
|
488
|
+
* Returns `null` on any error.
|
|
489
|
+
*/
|
|
490
|
+
declare function fetchActivityFeed(config: SifaApiConfig, handleOrDid: string, options?: FetchActivityFeedOptions): Promise<ActivityFeedResponse | null>;
|
|
491
|
+
|
|
492
|
+
/**
|
|
493
|
+
* Counts confirmed endorsements received by a DID. The backend's
|
|
494
|
+
* `GET /api/endorsement/:did` already returns only confirmed endorsements
|
|
495
|
+
* (via inner join with `endorsementConfirmations`), so this helper just
|
|
496
|
+
* returns the array length. Failures return 0 so callers can route safely.
|
|
497
|
+
*
|
|
498
|
+
* Public endpoint -- no credentials needed.
|
|
499
|
+
*/
|
|
500
|
+
declare function fetchEndorsementCount(config: SifaApiConfig, did: string, options?: ApiFetchOptions): Promise<number>;
|
|
501
|
+
|
|
502
|
+
interface FetchNetworkStreamCountOptions extends ApiFetchOptions {
|
|
503
|
+
/**
|
|
504
|
+
* Pass the caller's `Cookie` header on Next.js RSC server-side calls.
|
|
505
|
+
* Required for authenticated server fetches because `credentials: 'include'`
|
|
506
|
+
* does not propagate browser cookies in RSC.
|
|
507
|
+
*
|
|
508
|
+
* When omitted, the request falls back to `credentials: 'include'` so
|
|
509
|
+
* client-side calls work without extra plumbing.
|
|
510
|
+
*/
|
|
511
|
+
cookieHeader?: string;
|
|
512
|
+
}
|
|
513
|
+
/**
|
|
514
|
+
* Counts items in the authenticated user's network stream digest. The
|
|
515
|
+
* underlying `GET /api/stream/network` endpoint may 404 while the feature
|
|
516
|
+
* is in development; in that case (and on any other error) this returns
|
|
517
|
+
* 0 so callers can route safely to a fallback experience.
|
|
518
|
+
*/
|
|
519
|
+
declare function fetchNetworkStreamCount(config: SifaApiConfig, did: string, options?: FetchNetworkStreamCountOptions): Promise<number>;
|
|
520
|
+
|
|
521
|
+
/** Per-URI reaction state for the authenticated viewer. */
|
|
522
|
+
interface ReactionStatus {
|
|
523
|
+
reacted: boolean;
|
|
524
|
+
rkey?: string;
|
|
525
|
+
collection?: string;
|
|
526
|
+
}
|
|
527
|
+
/** Result of checking whether the authenticated viewer has an account on a given app. */
|
|
528
|
+
interface AccountCheckResult {
|
|
529
|
+
hasAccount: boolean;
|
|
530
|
+
appName: string;
|
|
531
|
+
appUrl: string;
|
|
532
|
+
}
|
|
533
|
+
interface FetchReactionStatusOptions extends ApiFetchOptions {
|
|
534
|
+
/**
|
|
535
|
+
* Pass the caller's `Cookie` header on Next.js RSC server-side calls.
|
|
536
|
+
* Required for authenticated server fetches because `credentials: 'include'`
|
|
537
|
+
* does not propagate browser cookies in RSC.
|
|
538
|
+
*/
|
|
539
|
+
cookieHeader?: string;
|
|
540
|
+
}
|
|
541
|
+
/**
|
|
542
|
+
* Batch-look up reaction status for multiple URIs. Returns `{}` for an
|
|
543
|
+
* empty input list (no network call) and `null` on any error.
|
|
544
|
+
*/
|
|
545
|
+
declare function fetchReactionStatus(config: SifaApiConfig, uris: string[], options?: FetchReactionStatusOptions): Promise<Record<string, ReactionStatus> | null>;
|
|
546
|
+
interface CheckAppAccountOptions extends ApiFetchOptions {
|
|
547
|
+
cookieHeader?: string;
|
|
548
|
+
}
|
|
549
|
+
/**
|
|
550
|
+
* Check whether the authenticated viewer has an account on a given app.
|
|
551
|
+
* Returns `null` on any error.
|
|
552
|
+
*/
|
|
553
|
+
declare function checkAppAccount(config: SifaApiConfig, appId: string, options?: CheckAppAccountOptions): Promise<AccountCheckResult | null>;
|
|
554
|
+
|
|
555
|
+
/** Voter on a roadmap item. */
|
|
556
|
+
interface RoadmapVoter {
|
|
557
|
+
did: string;
|
|
558
|
+
avatarUrl?: string;
|
|
559
|
+
}
|
|
560
|
+
/** Map of item key -> vote tally and voter list. */
|
|
561
|
+
type RoadmapVotesResponse = Record<string, {
|
|
562
|
+
count: number;
|
|
563
|
+
voters: RoadmapVoter[];
|
|
564
|
+
}>;
|
|
565
|
+
/**
|
|
566
|
+
* Public roadmap vote tallies, keyed by item. Returns `{}` on any error.
|
|
567
|
+
*/
|
|
568
|
+
declare function fetchRoadmapVotes(config: SifaApiConfig, options?: ApiFetchOptions): Promise<RoadmapVotesResponse>;
|
|
569
|
+
interface FetchMyRoadmapVotesOptions extends ApiFetchOptions {
|
|
570
|
+
/**
|
|
571
|
+
* Pass the caller's `Cookie` header on Next.js RSC server-side calls.
|
|
572
|
+
* Required for authenticated server fetches because `credentials: 'include'`
|
|
573
|
+
* does not propagate browser cookies in RSC.
|
|
574
|
+
*/
|
|
575
|
+
cookieHeader?: string;
|
|
576
|
+
}
|
|
577
|
+
/**
|
|
578
|
+
* Roadmap items the authenticated user has voted on. Returns `[]` on any
|
|
579
|
+
* error or when the response payload is shaped unexpectedly.
|
|
580
|
+
*/
|
|
581
|
+
declare function fetchMyRoadmapVotes(config: SifaApiConfig, options?: FetchMyRoadmapVotesOptions): Promise<string[]>;
|
|
582
|
+
|
|
301
583
|
/**
|
|
302
584
|
* Query key factory for TanStack Query.
|
|
303
585
|
*
|
|
@@ -314,6 +596,7 @@ declare const sifaQueryKeys: {
|
|
|
314
596
|
readonly profile: {
|
|
315
597
|
readonly all: () => readonly ["sifa", "profile"];
|
|
316
598
|
readonly byHandle: (handleOrDid: string) => readonly ["sifa", "profile", string];
|
|
599
|
+
readonly atFundLink: (did: string) => readonly ["sifa", "profile", "at-fund-link", string];
|
|
317
600
|
};
|
|
318
601
|
readonly position: {
|
|
319
602
|
readonly all: () => readonly ["sifa", "position"];
|
|
@@ -336,8 +619,41 @@ declare const sifaQueryKeys: {
|
|
|
336
619
|
readonly all: () => readonly ["sifa", "follow"];
|
|
337
620
|
readonly following: (opts: Record<string, unknown>) => readonly ["sifa", "follow", "following", Record<string, unknown>];
|
|
338
621
|
};
|
|
622
|
+
readonly stats: {
|
|
623
|
+
readonly all: () => readonly ["sifa", "stats"];
|
|
624
|
+
readonly homepage: () => readonly ["sifa", "stats", "homepage"];
|
|
625
|
+
};
|
|
626
|
+
readonly apps: {
|
|
627
|
+
readonly all: () => readonly ["sifa", "apps"];
|
|
628
|
+
readonly registry: () => readonly ["sifa", "apps", "registry"];
|
|
629
|
+
readonly hidden: () => readonly ["sifa", "apps", "hidden"];
|
|
630
|
+
};
|
|
631
|
+
readonly activity: {
|
|
632
|
+
readonly all: () => readonly ["sifa", "activity"];
|
|
633
|
+
readonly heatmap: (handleOrDid: string, days: number) => readonly ["sifa", "activity", "heatmap", string, number];
|
|
634
|
+
readonly teaser: (handleOrDid: string) => readonly ["sifa", "activity", "teaser", string];
|
|
635
|
+
readonly feed: (handleOrDid: string, opts: Record<string, unknown>) => readonly ["sifa", "activity", "feed", string, Record<string, unknown>];
|
|
636
|
+
};
|
|
637
|
+
readonly endorsement: {
|
|
638
|
+
readonly all: () => readonly ["sifa", "endorsement"];
|
|
639
|
+
readonly count: (did: string) => readonly ["sifa", "endorsement", "count", string];
|
|
640
|
+
};
|
|
641
|
+
readonly stream: {
|
|
642
|
+
readonly all: () => readonly ["sifa", "stream"];
|
|
643
|
+
readonly networkCount: (did: string) => readonly ["sifa", "stream", "network-count", string];
|
|
644
|
+
};
|
|
645
|
+
readonly reactions: {
|
|
646
|
+
readonly all: () => readonly ["sifa", "reactions"];
|
|
647
|
+
readonly status: (uris: string[]) => readonly ["sifa", "reactions", "status", string[]];
|
|
648
|
+
readonly accountCheck: (appId: string) => readonly ["sifa", "reactions", "account-check", string];
|
|
649
|
+
};
|
|
650
|
+
readonly roadmap: {
|
|
651
|
+
readonly all: () => readonly ["sifa", "roadmap"];
|
|
652
|
+
readonly votes: () => readonly ["sifa", "roadmap", "votes"];
|
|
653
|
+
readonly myVotes: () => readonly ["sifa", "roadmap", "my-votes"];
|
|
654
|
+
};
|
|
339
655
|
};
|
|
340
|
-
type SifaQueryKey = ReturnType<typeof sifaQueryKeys.all> | ReturnType<typeof sifaQueryKeys.profile.all> | ReturnType<typeof sifaQueryKeys.profile.byHandle> | ReturnType<typeof sifaQueryKeys.position.all> | ReturnType<typeof sifaQueryKeys.position.byOwner> | ReturnType<typeof sifaQueryKeys.search.all> | ReturnType<typeof sifaQueryKeys.search.profiles> | ReturnType<typeof sifaQueryKeys.search.skills> | ReturnType<typeof sifaQueryKeys.search.filters> | ReturnType<typeof sifaQueryKeys.discovery.all> | ReturnType<typeof sifaQueryKeys.discovery.similar> | ReturnType<typeof sifaQueryKeys.discovery.suggestions> | ReturnType<typeof sifaQueryKeys.discovery.suggestionCount> | ReturnType<typeof sifaQueryKeys.discovery.featured> | ReturnType<typeof sifaQueryKeys.follow.all> | ReturnType<typeof sifaQueryKeys.follow.following>;
|
|
656
|
+
type SifaQueryKey = ReturnType<typeof sifaQueryKeys.all> | ReturnType<typeof sifaQueryKeys.profile.all> | ReturnType<typeof sifaQueryKeys.profile.byHandle> | ReturnType<typeof sifaQueryKeys.profile.atFundLink> | ReturnType<typeof sifaQueryKeys.position.all> | ReturnType<typeof sifaQueryKeys.position.byOwner> | ReturnType<typeof sifaQueryKeys.search.all> | ReturnType<typeof sifaQueryKeys.search.profiles> | ReturnType<typeof sifaQueryKeys.search.skills> | ReturnType<typeof sifaQueryKeys.search.filters> | ReturnType<typeof sifaQueryKeys.discovery.all> | ReturnType<typeof sifaQueryKeys.discovery.similar> | ReturnType<typeof sifaQueryKeys.discovery.suggestions> | ReturnType<typeof sifaQueryKeys.discovery.suggestionCount> | ReturnType<typeof sifaQueryKeys.discovery.featured> | ReturnType<typeof sifaQueryKeys.follow.all> | ReturnType<typeof sifaQueryKeys.follow.following> | ReturnType<typeof sifaQueryKeys.stats.all> | ReturnType<typeof sifaQueryKeys.stats.homepage> | ReturnType<typeof sifaQueryKeys.apps.all> | ReturnType<typeof sifaQueryKeys.apps.registry> | ReturnType<typeof sifaQueryKeys.apps.hidden> | ReturnType<typeof sifaQueryKeys.activity.all> | ReturnType<typeof sifaQueryKeys.activity.heatmap> | ReturnType<typeof sifaQueryKeys.activity.teaser> | ReturnType<typeof sifaQueryKeys.activity.feed> | ReturnType<typeof sifaQueryKeys.endorsement.all> | ReturnType<typeof sifaQueryKeys.endorsement.count> | ReturnType<typeof sifaQueryKeys.stream.all> | ReturnType<typeof sifaQueryKeys.stream.networkCount> | ReturnType<typeof sifaQueryKeys.reactions.all> | ReturnType<typeof sifaQueryKeys.reactions.status> | ReturnType<typeof sifaQueryKeys.reactions.accountCheck> | ReturnType<typeof sifaQueryKeys.roadmap.all> | ReturnType<typeof sifaQueryKeys.roadmap.votes> | ReturnType<typeof sifaQueryKeys.roadmap.myVotes>;
|
|
341
657
|
|
|
342
658
|
/**
|
|
343
659
|
* React hook that reads an aggregated profile by handle or DID via
|
|
@@ -347,6 +663,11 @@ type SifaQueryKey = ReturnType<typeof sifaQueryKeys.all> | ReturnType<typeof sif
|
|
|
347
663
|
* fetch.
|
|
348
664
|
*/
|
|
349
665
|
declare function useProfile(handleOrDid: string | undefined | null, options?: Omit<UseQueryOptions<Profile | null, Error, Profile | null, ReturnType<typeof sifaQueryKeys.profile.byHandle>>, 'queryKey' | 'queryFn'>): _tanstack_react_query.UseQueryResult<Profile | null, Error>;
|
|
666
|
+
/**
|
|
667
|
+
* React hook for a profile's AT Fund link. Returns `null` data on error
|
|
668
|
+
* or when the profile has no link configured.
|
|
669
|
+
*/
|
|
670
|
+
declare function useAtFundLink(did: string | undefined | null, options?: Omit<UseQueryOptions<string | null, Error, string | null, ReturnType<typeof sifaQueryKeys.profile.atFundLink>>, 'queryKey' | 'queryFn'>): _tanstack_react_query.UseQueryResult<string | null, Error>;
|
|
350
671
|
|
|
351
672
|
/**
|
|
352
673
|
* React hook for creating a new position record. On success, invalidates
|
|
@@ -358,6 +679,19 @@ declare function useProfile(handleOrDid: string | undefined | null, options?: Om
|
|
|
358
679
|
*/
|
|
359
680
|
declare function useCreatePosition(ownerDid: string, options?: Omit<UseMutationOptions<CreateResult, Error, Record<string, unknown>>, 'mutationFn'>): _tanstack_react_query.UseMutationResult<CreateResult, Error, Record<string, unknown>, unknown>;
|
|
360
681
|
|
|
682
|
+
/**
|
|
683
|
+
* React hook for the public homepage stats. Returns `null` data on error.
|
|
684
|
+
*/
|
|
685
|
+
declare function useStats(options?: Omit<UseQueryOptions<StatsResponse | null, Error, StatsResponse | null, ReturnType<typeof sifaQueryKeys.stats.homepage>>, 'queryKey' | 'queryFn'>): _tanstack_react_query.UseQueryResult<StatsResponse | null, Error>;
|
|
686
|
+
|
|
687
|
+
/** React hook for the public app registry. */
|
|
688
|
+
declare function useAppsRegistry(options?: Omit<UseQueryOptions<AppRegistryEntry[], Error, AppRegistryEntry[], ReturnType<typeof sifaQueryKeys.apps.registry>>, 'queryKey' | 'queryFn'>): _tanstack_react_query.UseQueryResult<AppRegistryEntry[], Error>;
|
|
689
|
+
/**
|
|
690
|
+
* React hook for the authenticated user's hidden-apps list. Requires a
|
|
691
|
+
* client-side session (relies on `credentials: 'include'`).
|
|
692
|
+
*/
|
|
693
|
+
declare function useHiddenApps(options?: Omit<UseQueryOptions<HiddenApp[], Error, HiddenApp[], ReturnType<typeof sifaQueryKeys.apps.hidden>>, 'queryKey' | 'queryFn'>): _tanstack_react_query.UseQueryResult<HiddenApp[], Error>;
|
|
694
|
+
|
|
361
695
|
declare function useSearchProfiles(filters: SearchFilters, options?: Omit<UseQueryOptions<SearchResponse, Error, SearchResponse, ReturnType<typeof sifaQueryKeys.search.profiles>>, 'queryKey' | 'queryFn'>): _tanstack_react_query.UseQueryResult<SearchResponse, Error>;
|
|
362
696
|
declare function useSkillSuggestions(query: string, options?: Omit<UseQueryOptions<SkillSearchResult[], Error, SkillSearchResult[], ReturnType<typeof sifaQueryKeys.search.skills>>, 'queryKey' | 'queryFn'>): _tanstack_react_query.UseQueryResult<SkillSearchResult[], Error>;
|
|
363
697
|
declare function useSearchFilters(options?: Omit<UseQueryOptions<FilterOptions, Error, FilterOptions, ReturnType<typeof sifaQueryKeys.search.filters>>, 'queryKey' | 'queryFn'>): _tanstack_react_query.UseQueryResult<FilterOptions, Error>;
|
|
@@ -375,4 +709,30 @@ declare function useFollowing(opts?: {
|
|
|
375
709
|
limit?: number;
|
|
376
710
|
}, options?: Omit<UseQueryOptions<FollowingResponse, Error, FollowingResponse, ReturnType<typeof sifaQueryKeys.follow.following>>, 'queryKey' | 'queryFn'>): _tanstack_react_query.UseQueryResult<FollowingResponse, Error>;
|
|
377
711
|
|
|
378
|
-
|
|
712
|
+
declare function useHeatmapData(handleOrDid: string | undefined | null, days: number, options?: Omit<UseQueryOptions<HeatmapResponse | null, Error, HeatmapResponse | null, ReturnType<typeof sifaQueryKeys.activity.heatmap>>, 'queryKey' | 'queryFn'>): _tanstack_react_query.UseQueryResult<HeatmapResponse | null, Error>;
|
|
713
|
+
declare function useActivityTeaser(handleOrDid: string | undefined | null, options?: Omit<UseQueryOptions<ActivityTeaserResponse | null, Error, ActivityTeaserResponse | null, ReturnType<typeof sifaQueryKeys.activity.teaser>>, 'queryKey' | 'queryFn'>): _tanstack_react_query.UseQueryResult<ActivityTeaserResponse | null, Error>;
|
|
714
|
+
declare function useActivityFeed(handleOrDid: string | undefined | null, opts?: Pick<FetchActivityFeedOptions, 'category' | 'limit' | 'cursor'>, options?: Omit<UseQueryOptions<ActivityFeedResponse | null, Error, ActivityFeedResponse | null, ReturnType<typeof sifaQueryKeys.activity.feed>>, 'queryKey' | 'queryFn'>): _tanstack_react_query.UseQueryResult<ActivityFeedResponse | null, Error>;
|
|
715
|
+
|
|
716
|
+
/** Count of confirmed endorsements for a DID. Returns 0 on error. */
|
|
717
|
+
declare function useEndorsementCount(did: string | undefined | null, options?: Omit<UseQueryOptions<number, Error, number, ReturnType<typeof sifaQueryKeys.endorsement.count>>, 'queryKey' | 'queryFn'>): _tanstack_react_query.UseQueryResult<number, Error>;
|
|
718
|
+
|
|
719
|
+
/**
|
|
720
|
+
* Count of items in the authenticated user's network stream digest.
|
|
721
|
+
* Returns 0 on error (including when the endpoint isn't yet shipped).
|
|
722
|
+
*/
|
|
723
|
+
declare function useNetworkStreamCount(did: string | undefined | null, options?: Omit<UseQueryOptions<number, Error, number, ReturnType<typeof sifaQueryKeys.stream.networkCount>>, 'queryKey' | 'queryFn'>): _tanstack_react_query.UseQueryResult<number, Error>;
|
|
724
|
+
|
|
725
|
+
/**
|
|
726
|
+
* Batch-look up reaction status for multiple URIs. Skips the network call
|
|
727
|
+
* when `uris` is empty.
|
|
728
|
+
*/
|
|
729
|
+
declare function useReactionStatus(uris: string[], options?: Omit<UseQueryOptions<Record<string, ReactionStatus> | null, Error, Record<string, ReactionStatus> | null, ReturnType<typeof sifaQueryKeys.reactions.status>>, 'queryKey' | 'queryFn'>): _tanstack_react_query.UseQueryResult<Record<string, ReactionStatus> | null, Error>;
|
|
730
|
+
/** Check whether the authenticated viewer has an account on the given app. */
|
|
731
|
+
declare function useAppAccountCheck(appId: string | undefined | null, options?: Omit<UseQueryOptions<AccountCheckResult | null, Error, AccountCheckResult | null, ReturnType<typeof sifaQueryKeys.reactions.accountCheck>>, 'queryKey' | 'queryFn'>): _tanstack_react_query.UseQueryResult<AccountCheckResult | null, Error>;
|
|
732
|
+
|
|
733
|
+
/** Public roadmap vote tallies. Returns `{}` data on error. */
|
|
734
|
+
declare function useRoadmapVotes(options?: Omit<UseQueryOptions<RoadmapVotesResponse, Error, RoadmapVotesResponse, ReturnType<typeof sifaQueryKeys.roadmap.votes>>, 'queryKey' | 'queryFn'>): _tanstack_react_query.UseQueryResult<RoadmapVotesResponse, Error>;
|
|
735
|
+
/** Roadmap items the authenticated viewer has voted on. Returns `[]` data on error. */
|
|
736
|
+
declare function useMyRoadmapVotes(options?: Omit<UseQueryOptions<string[], Error, string[], ReturnType<typeof sifaQueryKeys.roadmap.myVotes>>, 'queryKey' | 'queryFn'>): _tanstack_react_query.UseQueryResult<string[], Error>;
|
|
737
|
+
|
|
738
|
+
export { type AccountCheckResult, type ActivityFeedResponse, type ActivityItem, type ActivityTeaserResponse, ApiError, type ApiFetchOptions, type AppRegistryEntry, type CheckAppAccountOptions, type CreateResult, type FeaturedProfile, type FetchActivityFeedOptions, type FetchActivityTeaserOptions, type FetchHiddenAppsOptions, type FetchMyRoadmapVotesOptions, type FetchNetworkStreamCountOptions, type FetchReactionStatusOptions, type FetchSuggestionsOptions, type FilterOptions, type FollowProfile, type FollowingResponse, type HeatmapDay, type HeatmapResponse, type HiddenApp, type ProfileSearchResult, QUOTED_POSTS_BATCH_MAX, type QuotedPostAuthor, type QuotedPostImage, type QuotedPostResult, type QuotedPostView, type ReactionStatus, type ResolveQuotedPostsOptions, type RoadmapVoter, type RoadmapVotesResponse, type SearchFilters, type SearchResponse, type SifaApiConfig, SifaProvider, type SifaProviderProps, type SifaQueryKey, type SimilarProfile, type SkillSearchResult, type StatsResponse, type SuggestionProfile, type SuggestionsResponse, type WriteResult, apiFetch, apiFetchOrNull, checkAppAccount, createPosition, fetchActivityFeed, fetchActivityTeaser, fetchAppsRegistry, fetchAtFundLink, fetchEndorsementCount, fetchFeaturedProfile, fetchFollowing, fetchHeatmapData, fetchHiddenApps, fetchMyRoadmapVotes, fetchNetworkStreamCount, fetchProfile, fetchReactionStatus, fetchRoadmapVotes, fetchSearchFilters, fetchSearchProfiles, fetchSimilarProfiles, fetchSkillSuggestions, fetchStats, fetchSuggestionCount, fetchSuggestions, resolveQuotedPosts, sifaQueryKeys, useActivityFeed, useActivityTeaser, useAppAccountCheck, useAppsRegistry, useAtFundLink, useCreatePosition, useEndorsementCount, useFeaturedProfile, useFollowing, useHeatmapData, useHiddenApps, useMyRoadmapVotes, useNetworkStreamCount, useProfile, useReactionStatus, useRoadmapVotes, useSearchFilters, useSearchProfiles, useSifaConfig, useSimilarProfiles, useSkillSuggestions, useStats, useSuggestionCount, useSuggestions };
|