From 464efaac339b18f980bce02419cfce102c56f031 Mon Sep 17 00:00:00 2001 From: Complexlity Date: Thu, 8 Aug 2024 19:33:40 +0100 Subject: [PATCH] wip: api --- src/playground.ts | 47 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 47 insertions(+) diff --git a/src/playground.ts b/src/playground.ts index e69de29..dc4d158 100644 --- a/src/playground.ts +++ b/src/playground.ts @@ -0,0 +1,47 @@ +const uniFarcasterSdk: any = {}; + +const sdk = new uniFarcasterSdk({ + hubUrl: "string | hasDefaultValue", + neynarApiKey: "string | undefined", + airstackApiKey: "string | undefined", +}); + +const user: User = sdk.getUserByFid(11244, 213144); +const user2: User = sdk.getUserByUsername("complexlity", 213144); +const cast: Cast = sdk.getCastByHash("0xa0bc828", 213144); +const cast2: Cast = sdk.getCastByUrl("https://warpcast.com/0xa38dj", 213144); + +type User = { + fid: number; + ethAddresses: string[]; + solAddresses: string[]; + username: string; + displayName: string; + bio: string; + pfpUrl: string; + followerCount: number; + followingCount: number; + powerBadge: boolean; + viewerContext: { + following: boolean; + followedBy: boolean; + }; +}; + +type Cast = { + author: User; + userReactions: { + likes: number; + recasts: number; + }; + viewerContext: { + liked: boolean; + recasted: boolean; + }; +}; + +//Optional: Expose neynar and airstack for direct query when extra infor needed +const endpoint = "/user?limit=2"; +const query = `SOME_GRAPHQL_QUERY`; +sdk.neynar(endpoint); +sdk.airstack(query);