@opencoredev/social-sdk 0.1.2 → 0.2.1

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.
Files changed (82) hide show
  1. package/README.md +6 -0
  2. package/dist/cli.d.ts +13 -0
  3. package/dist/cli.js +234 -0
  4. package/dist/cloud/common.d.ts +25 -0
  5. package/dist/cloud/common.js +334 -0
  6. package/dist/cloud/lifecycle.d.ts +10 -0
  7. package/dist/cloud/lifecycle.js +112 -0
  8. package/dist/cloud/media.d.ts +23 -0
  9. package/dist/cloud/media.js +100 -0
  10. package/dist/cloud/outcomes.d.ts +9 -0
  11. package/dist/cloud/outcomes.js +195 -0
  12. package/dist/cloud/post-for-me.d.ts +69 -0
  13. package/dist/cloud/post-for-me.js +396 -0
  14. package/dist/cloud/zernio.d.ts +111 -0
  15. package/dist/cloud/zernio.js +632 -0
  16. package/dist/core/adapter.d.ts +158 -0
  17. package/dist/core/adapter.js +3 -0
  18. package/dist/core/client.d.ts +141 -0
  19. package/dist/core/client.js +1285 -0
  20. package/dist/core/concurrency.d.ts +9 -0
  21. package/dist/core/concurrency.js +79 -0
  22. package/dist/core/errors.d.ts +44 -0
  23. package/dist/core/errors.js +50 -0
  24. package/dist/core/idempotency.d.ts +33 -0
  25. package/dist/core/idempotency.js +58 -0
  26. package/dist/core/index.d.ts +6 -0
  27. package/dist/core/index.js +6 -0
  28. package/dist/core/pagination.d.ts +11 -0
  29. package/dist/core/pagination.js +81 -0
  30. package/dist/core/types.d.ts +396 -0
  31. package/dist/core/types.js +16 -0
  32. package/dist/index.d.ts +1 -0
  33. package/dist/index.js +1 -0
  34. package/dist/platforms/bluesky.d.ts +261 -0
  35. package/dist/platforms/bluesky.js +1776 -0
  36. package/dist/platforms/instagram.d.ts +129 -0
  37. package/dist/platforms/instagram.js +1031 -0
  38. package/dist/platforms/linkedin.d.ts +108 -0
  39. package/dist/platforms/linkedin.js +890 -0
  40. package/dist/platforms/threads.d.ts +134 -0
  41. package/dist/platforms/threads.js +945 -0
  42. package/dist/platforms/tiktok.d.ts +31 -0
  43. package/dist/platforms/tiktok.js +593 -0
  44. package/dist/platforms/x-engagement.d.ts +16 -0
  45. package/dist/platforms/x-engagement.js +50 -0
  46. package/dist/platforms/x-text.d.ts +2 -0
  47. package/dist/platforms/x-text.js +123 -0
  48. package/dist/platforms/x-tlds.d.ts +1 -0
  49. package/dist/platforms/x-tlds.js +2 -0
  50. package/dist/platforms/x.d.ts +299 -0
  51. package/dist/platforms/x.js +1287 -0
  52. package/dist/platforms/youtube-upload.d.ts +32 -0
  53. package/dist/platforms/youtube-upload.js +296 -0
  54. package/dist/platforms/youtube.d.ts +108 -0
  55. package/dist/platforms/youtube.js +1100 -0
  56. package/dist/server/connections.d.ts +123 -0
  57. package/dist/server/connections.js +335 -0
  58. package/dist/server/credentials.d.ts +51 -0
  59. package/dist/server/credentials.js +108 -0
  60. package/dist/server/index.d.ts +4 -0
  61. package/dist/server/index.js +4 -0
  62. package/dist/server/oauth.d.ts +52 -0
  63. package/dist/server/oauth.js +553 -0
  64. package/dist/server/webhooks.d.ts +57 -0
  65. package/dist/server/webhooks.js +204 -0
  66. package/dist/testing/index.d.ts +46 -0
  67. package/dist/testing/index.js +564 -0
  68. package/dist/testing.d.ts +1 -0
  69. package/dist/testing.js +1 -0
  70. package/dist/transport/binary.d.ts +2 -0
  71. package/dist/transport/binary.js +29 -0
  72. package/dist/transport/budget.d.ts +3 -0
  73. package/dist/transport/budget.js +26 -0
  74. package/dist/transport/http.d.ts +44 -0
  75. package/dist/transport/http.js +259 -0
  76. package/dist/transport/json.d.ts +8 -0
  77. package/dist/transport/json.js +16 -0
  78. package/dist/transport/upload.d.ts +25 -0
  79. package/dist/transport/upload.js +153 -0
  80. package/dist/transport/validation.d.ts +5 -0
  81. package/dist/transport/validation.js +24 -0
  82. package/package.json +2 -7
@@ -0,0 +1,108 @@
1
+ import type { AdapterOperationContext, ConnectedAccountRef, JsonObject, MediaRef } from "../core/types.js";
2
+ export interface LinkedInOptions {
3
+ readonly auth: {
4
+ readonly accessToken: string;
5
+ readonly author: `urn:li:person:${string}` | `urn:li:organization:${string}`;
6
+ };
7
+ /** Explicit monthly API version, for example 202609. Upgrade after reviewing LinkedIn's migration notes. */
8
+ readonly apiVersion: string;
9
+ readonly fetch?: typeof globalThis.fetch;
10
+ readonly clock?: () => Date;
11
+ }
12
+ export interface LinkedInTimeInterval {
13
+ readonly granularity: "DAY" | "WEEK" | "MONTH";
14
+ readonly start?: number;
15
+ readonly end?: number;
16
+ }
17
+ export interface LinkedInFollowerBreakdown {
18
+ readonly dimension: "function" | "seniority" | "industry" | "geo" | "geoCountry" | "staffCountRange" | "associationType";
19
+ readonly value: string;
20
+ readonly organicFollowerCount?: number | undefined;
21
+ readonly paidFollowerCount?: number | undefined;
22
+ }
23
+ export interface LinkedInFollowerStatistics {
24
+ readonly organization: string;
25
+ readonly interval?: LinkedInTimeInterval | undefined;
26
+ readonly organicFollowerGain?: number | undefined;
27
+ readonly paidFollowerGain?: number | undefined;
28
+ readonly breakdowns: readonly LinkedInFollowerBreakdown[];
29
+ }
30
+ export interface LinkedInPageStatistics {
31
+ readonly organization: string;
32
+ readonly interval?: LinkedInTimeInterval | undefined;
33
+ readonly views: Readonly<Record<string, number>>;
34
+ readonly clicks: Readonly<Record<string, number>>;
35
+ readonly breakdowns: {
36
+ readonly dimension: string;
37
+ readonly value: string;
38
+ readonly views: Readonly<Record<string, number>>;
39
+ readonly clicks: Readonly<Record<string, number>>;
40
+ }[];
41
+ }
42
+ export interface LinkedInShareStatistics {
43
+ readonly organization: string;
44
+ readonly interval?: LinkedInTimeInterval | undefined;
45
+ readonly metrics: Readonly<Record<string, number>>;
46
+ }
47
+ export interface LinkedInNative {
48
+ readonly imageStatus: (ref: MediaRef, context: AdapterOperationContext) => Promise<JsonObject>;
49
+ readonly registerVideo: (input: {
50
+ readonly account: ConnectedAccountRef;
51
+ readonly byteSize: number;
52
+ readonly context: AdapterOperationContext;
53
+ }) => Promise<JsonObject>;
54
+ readonly createPoll: (input: {
55
+ readonly account: ConnectedAccountRef;
56
+ readonly text: string;
57
+ readonly options: readonly string[];
58
+ readonly duration?: "ONE_DAY" | "THREE_DAYS" | "SEVEN_DAYS" | "FOURTEEN_DAYS";
59
+ readonly context: AdapterOperationContext;
60
+ }) => Promise<JsonObject>;
61
+ readonly react: (input: {
62
+ readonly account: ConnectedAccountRef;
63
+ readonly postId: string;
64
+ readonly reaction: string;
65
+ readonly context: AdapterOperationContext;
66
+ }) => Promise<void>;
67
+ readonly reshare: (input: {
68
+ readonly account: ConnectedAccountRef;
69
+ readonly postId: string;
70
+ readonly context: AdapterOperationContext;
71
+ }) => Promise<JsonObject>;
72
+ readonly updatePost: (input: {
73
+ readonly account: ConnectedAccountRef;
74
+ readonly postId: string;
75
+ readonly body: JsonObject;
76
+ readonly context: AdapterOperationContext;
77
+ }) => Promise<JsonObject>;
78
+ readonly deletePost: (input: {
79
+ readonly account: ConnectedAccountRef;
80
+ readonly postId: string;
81
+ readonly context: AdapterOperationContext;
82
+ }) => Promise<void>;
83
+ readonly organizationAnalytics: (input: {
84
+ readonly account: ConnectedAccountRef;
85
+ readonly query?: JsonObject;
86
+ readonly context: AdapterOperationContext;
87
+ }) => Promise<JsonObject>;
88
+ readonly getOrganizationFollowerStatistics: (input: {
89
+ readonly account: ConnectedAccountRef;
90
+ readonly interval?: LinkedInTimeInterval;
91
+ readonly context: AdapterOperationContext;
92
+ }) => Promise<readonly LinkedInFollowerStatistics[]>;
93
+ readonly getOrganizationPageStatistics: (input: {
94
+ readonly account: ConnectedAccountRef;
95
+ readonly interval?: LinkedInTimeInterval;
96
+ readonly context: AdapterOperationContext;
97
+ }) => Promise<readonly LinkedInPageStatistics[]>;
98
+ readonly getOrganizationShareStatistics: (input: {
99
+ readonly account: ConnectedAccountRef;
100
+ readonly interval?: LinkedInTimeInterval;
101
+ readonly context: AdapterOperationContext;
102
+ }) => Promise<readonly LinkedInShareStatistics[]>;
103
+ readonly getOrganizationFollowerCount: (input: {
104
+ readonly account: ConnectedAccountRef;
105
+ readonly context: AdapterOperationContext;
106
+ }) => Promise<number | undefined>;
107
+ }
108
+ export declare function linkedin(options: LinkedInOptions): import("../core/adapter.js").SocialAdapter<LinkedInNative>;