@medialane/sdk 0.3.2 → 0.4.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.
package/dist/index.d.cts CHANGED
@@ -29,6 +29,12 @@ declare const SUPPORTED_NETWORKS: readonly ["mainnet", "sepolia"];
29
29
  type Network = (typeof SUPPORTED_NETWORKS)[number];
30
30
  declare const DEFAULT_RPC_URLS: Record<Network, string>;
31
31
 
32
+ interface RetryOptions {
33
+ maxAttempts?: number;
34
+ baseDelayMs?: number;
35
+ maxDelayMs?: number;
36
+ }
37
+
32
38
  declare const MedialaneConfigSchema: z.ZodObject<{
33
39
  network: z.ZodDefault<z.ZodEnum<["mainnet", "sepolia"]>>;
34
40
  rpcUrl: z.ZodOptional<z.ZodString>;
@@ -37,20 +43,43 @@ declare const MedialaneConfigSchema: z.ZodObject<{
37
43
  apiKey: z.ZodOptional<z.ZodString>;
38
44
  marketplaceContract: z.ZodOptional<z.ZodString>;
39
45
  collectionContract: z.ZodOptional<z.ZodString>;
46
+ retryOptions: z.ZodOptional<z.ZodObject<{
47
+ maxAttempts: z.ZodOptional<z.ZodNumber>;
48
+ baseDelayMs: z.ZodOptional<z.ZodNumber>;
49
+ maxDelayMs: z.ZodOptional<z.ZodNumber>;
50
+ }, "strip", z.ZodTypeAny, {
51
+ maxAttempts?: number | undefined;
52
+ baseDelayMs?: number | undefined;
53
+ maxDelayMs?: number | undefined;
54
+ }, {
55
+ maxAttempts?: number | undefined;
56
+ baseDelayMs?: number | undefined;
57
+ maxDelayMs?: number | undefined;
58
+ }>>;
40
59
  }, "strip", z.ZodTypeAny, {
41
60
  network: "mainnet" | "sepolia";
61
+ collectionContract?: string | undefined;
42
62
  rpcUrl?: string | undefined;
43
63
  backendUrl?: string | undefined;
44
64
  apiKey?: string | undefined;
45
65
  marketplaceContract?: string | undefined;
46
- collectionContract?: string | undefined;
66
+ retryOptions?: {
67
+ maxAttempts?: number | undefined;
68
+ baseDelayMs?: number | undefined;
69
+ maxDelayMs?: number | undefined;
70
+ } | undefined;
47
71
  }, {
72
+ collectionContract?: string | undefined;
48
73
  network?: "mainnet" | "sepolia" | undefined;
49
74
  rpcUrl?: string | undefined;
50
75
  backendUrl?: string | undefined;
51
76
  apiKey?: string | undefined;
52
77
  marketplaceContract?: string | undefined;
53
- collectionContract?: string | undefined;
78
+ retryOptions?: {
79
+ maxAttempts?: number | undefined;
80
+ baseDelayMs?: number | undefined;
81
+ maxDelayMs?: number | undefined;
82
+ } | undefined;
54
83
  }>;
55
84
  type MedialaneConfig = z.input<typeof MedialaneConfigSchema>;
56
85
  interface ResolvedConfig {
@@ -60,6 +89,7 @@ interface ResolvedConfig {
60
89
  apiKey: string | undefined;
61
90
  marketplaceContract: string;
62
91
  collectionContract: string;
92
+ retryOptions?: RetryOptions;
63
93
  }
64
94
  declare function resolveConfig(raw: MedialaneConfig): ResolvedConfig;
65
95
 
@@ -145,9 +175,12 @@ interface TxResult {
145
175
  txHash: string;
146
176
  }
147
177
 
178
+ type MedialaneErrorCode = "TOKEN_NOT_FOUND" | "COLLECTION_NOT_FOUND" | "ORDER_NOT_FOUND" | "INTENT_NOT_FOUND" | "INTENT_EXPIRED" | "RATE_LIMITED" | "NETWORK_NOT_SUPPORTED" | "APPROVAL_FAILED" | "TRANSACTION_FAILED" | "INVALID_PARAMS" | "UNAUTHORIZED" | "UNKNOWN";
179
+
148
180
  declare class MedialaneError extends Error {
181
+ readonly code: MedialaneErrorCode;
149
182
  readonly cause?: unknown | undefined;
150
- constructor(message: string, cause?: unknown | undefined);
183
+ constructor(message: string, code?: MedialaneErrorCode, cause?: unknown | undefined);
151
184
  }
152
185
 
153
186
  declare class MarketplaceModule {
@@ -165,6 +198,14 @@ declare class MarketplaceModule {
165
198
  buildCancellationTypedData(params: Record<string, unknown>, chainId: constants.StarknetChainId): TypedData;
166
199
  }
167
200
 
201
+ type CollectionSort = "recent" | "supply" | "floor" | "volume" | "name";
202
+ interface ApiCollectionsQuery {
203
+ page?: number;
204
+ limit?: number;
205
+ isKnown?: boolean;
206
+ sort?: CollectionSort;
207
+ owner?: string;
208
+ }
168
209
  type OrderStatus = "ACTIVE" | "FULFILLED" | "CANCELLED" | "EXPIRED";
169
210
  type SortOrder = "price_asc" | "price_desc" | "recent";
170
211
  type ActivityType = "transfer" | "sale" | "listing" | "offer" | "cancelled";
@@ -320,6 +361,9 @@ interface ApiCollection {
320
361
  startBlock: string;
321
362
  metadataStatus: "PENDING" | "FETCHING" | "FETCHED" | "FAILED";
322
363
  isKnown: boolean;
364
+ source: "MEDIALANE_REGISTRY" | "EXTERNAL" | "PARTNERSHIP" | "IP_TICKET" | "IP_CLUB" | "GAME";
365
+ claimedBy: string | null;
366
+ profile?: ApiCollectionProfile | null;
323
367
  floorPrice: string | null;
324
368
  totalVolume: string | null;
325
369
  holderCount: number | null;
@@ -491,15 +535,61 @@ interface CreateWebhookParams {
491
535
  events: WebhookEventType[];
492
536
  label?: string;
493
537
  }
538
+ interface ApiCollectionProfile {
539
+ contractAddress: string;
540
+ chain: string;
541
+ displayName: string | null;
542
+ description: string | null;
543
+ image: string | null;
544
+ bannerImage: string | null;
545
+ websiteUrl: string | null;
546
+ twitterUrl: string | null;
547
+ discordUrl: string | null;
548
+ telegramUrl: string | null;
549
+ updatedBy: string | null;
550
+ updatedAt: string;
551
+ }
552
+ interface ApiCreatorProfile {
553
+ walletAddress: string;
554
+ chain: string;
555
+ displayName: string | null;
556
+ bio: string | null;
557
+ avatarImage: string | null;
558
+ bannerImage: string | null;
559
+ websiteUrl: string | null;
560
+ twitterUrl: string | null;
561
+ discordUrl: string | null;
562
+ telegramUrl: string | null;
563
+ updatedAt: string;
564
+ }
565
+ interface ApiCollectionClaim {
566
+ id: string;
567
+ contractAddress: string;
568
+ chain: string;
569
+ claimantAddress: string | null;
570
+ status: "PENDING" | "AUTO_APPROVED" | "APPROVED" | "REJECTED";
571
+ verificationMethod: "ONCHAIN" | "SIGNATURE" | "MANUAL";
572
+ createdAt: string;
573
+ }
574
+ interface ApiAdminCollectionClaim extends ApiCollectionClaim {
575
+ claimantEmail: string | null;
576
+ notes: string | null;
577
+ adminNotes: string | null;
578
+ reviewedBy: string | null;
579
+ reviewedAt: string | null;
580
+ updatedAt: string;
581
+ }
494
582
 
495
583
  declare class MedialaneApiError extends Error {
496
584
  readonly status: number;
585
+ readonly code: MedialaneErrorCode;
497
586
  constructor(status: number, message: string);
498
587
  }
499
588
  declare class ApiClient {
500
589
  private readonly baseUrl;
501
590
  private readonly baseHeaders;
502
- constructor(baseUrl: string, apiKey?: string);
591
+ private readonly retryOptions;
592
+ constructor(baseUrl: string, apiKey?: string, retryOptions?: RetryOptions);
503
593
  private request;
504
594
  private get;
505
595
  private post;
@@ -512,7 +602,7 @@ declare class ApiClient {
512
602
  getToken(contract: string, tokenId: string, wait?: boolean): Promise<ApiResponse<ApiToken>>;
513
603
  getTokensByOwner(address: string, page?: number, limit?: number): Promise<ApiResponse<ApiToken[]>>;
514
604
  getTokenHistory(contract: string, tokenId: string, page?: number, limit?: number): Promise<ApiResponse<ApiActivity[]>>;
515
- getCollections(page?: number, limit?: number, isKnown?: boolean): Promise<ApiResponse<ApiCollection[]>>;
605
+ getCollections(page?: number, limit?: number, isKnown?: boolean, sort?: CollectionSort): Promise<ApiResponse<ApiCollection[]>>;
516
606
  getCollectionsByOwner(owner: string, page?: number, limit?: number): Promise<ApiResponse<ApiCollection[]>>;
517
607
  getCollection(contract: string): Promise<ApiResponse<ApiCollection>>;
518
608
  getCollectionTokens(contract: string, page?: number, limit?: number): Promise<ApiResponse<ApiToken[]>>;
@@ -547,6 +637,36 @@ declare class ApiClient {
547
637
  id: string;
548
638
  status: string;
549
639
  }>>;
640
+ /**
641
+ * Path 1: On-chain auto claim. Sends both x-api-key (tenant auth) and
642
+ * Authorization: Bearer (Clerk JWT) simultaneously.
643
+ */
644
+ claimCollection(contractAddress: string, walletAddress: string, clerkToken: string): Promise<{
645
+ verified: boolean;
646
+ collection?: ApiCollection;
647
+ reason?: string;
648
+ }>;
649
+ /**
650
+ * Path 3: Manual off-chain claim request (email-based).
651
+ */
652
+ requestCollectionClaim(params: {
653
+ contractAddress: string;
654
+ walletAddress?: string;
655
+ email: string;
656
+ notes?: string;
657
+ }): Promise<{
658
+ claim: ApiCollectionClaim;
659
+ }>;
660
+ getCollectionProfile(contractAddress: string): Promise<ApiCollectionProfile | null>;
661
+ /**
662
+ * Update collection profile. Requires Clerk JWT for ownership check.
663
+ */
664
+ updateCollectionProfile(contractAddress: string, data: Partial<Omit<ApiCollectionProfile, "contractAddress" | "chain" | "updatedBy" | "updatedAt">>, clerkToken: string): Promise<ApiCollectionProfile>;
665
+ getCreatorProfile(walletAddress: string): Promise<ApiCreatorProfile | null>;
666
+ /**
667
+ * Update creator profile. Requires Clerk JWT; wallet must match authenticated user.
668
+ */
669
+ updateCreatorProfile(walletAddress: string, data: Partial<Omit<ApiCreatorProfile, "walletAddress" | "chain" | "updatedAt">>, clerkToken: string): Promise<ApiCreatorProfile>;
550
670
  }
551
671
 
552
672
  declare class MedialaneClient {
@@ -989,4 +1109,4 @@ declare function buildFulfillmentTypedData(message: Record<string, unknown>, cha
989
1109
  */
990
1110
  declare function buildCancellationTypedData(message: Record<string, unknown>, chainId: constants.StarknetChainId): TypedData;
991
1111
 
992
- export { type ActivityType, type ApiActivitiesQuery, type ApiActivity, type ApiActivityPrice, ApiClient, type ApiCollection, type ApiIntent, type ApiIntentCreated, type ApiKeyStatus, type ApiMeta, type ApiMetadataSignedUrl, type ApiMetadataUpload, type ApiOrder, type ApiOrderConsideration, type ApiOrderOffer, type ApiOrderPrice, type ApiOrderTokenMeta, type ApiOrderTxHash, type ApiOrdersQuery, type ApiPortalKey, type ApiPortalKeyCreated, type ApiPortalMe, type ApiResponse, type ApiSearchCollectionResult, type ApiSearchResult, type ApiSearchTokenResult, type ApiToken, type ApiTokenMetadata, type ApiUsageDay, type ApiWebhookCreated, type ApiWebhookEndpoint, COLLECTION_CONTRACT_MAINNET, type CancelOrderIntentParams, type CancelOrderParams, type Cancelation, type CartItem, type ConsiderationItem, type CreateCollectionIntentParams, type CreateCollectionParams, type CreateListingIntentParams, type CreateListingParams, type CreateMintIntentParams, type CreateWebhookParams, DEFAULT_RPC_URLS, type FulfillOrderIntentParams, type FulfillOrderParams, type Fulfillment, IPMarketplaceABI, type IntentStatus, type IntentType, type IpAttribute, type IpNftMetadata, MARKETPLACE_CONTRACT_MAINNET, type MakeOfferIntentParams, type MakeOfferParams, MarketplaceModule, MedialaneApiError, MedialaneClient, type MedialaneConfig, MedialaneError, type MintParams, type Network, type OfferItem, type Order, type OrderParameters, type OrderStatus, type ResolvedConfig, SUPPORTED_NETWORKS, SUPPORTED_TOKENS, type SortOrder, type SupportedTokenSymbol, type TenantPlan, type TxResult, type WebhookEventType, type WebhookStatus, buildCancellationTypedData, buildFulfillmentTypedData, buildOrderTypedData, formatAmount, getTokenByAddress, getTokenBySymbol, normalizeAddress, parseAmount, resolveConfig, shortenAddress, stringifyBigInts, u256ToBigInt };
1112
+ export { type ActivityType, type ApiActivitiesQuery, type ApiActivity, type ApiActivityPrice, type ApiAdminCollectionClaim, ApiClient, type ApiCollection, type ApiCollectionClaim, type ApiCollectionProfile, type ApiCollectionsQuery, type ApiCreatorProfile, type ApiIntent, type ApiIntentCreated, type ApiKeyStatus, type ApiMeta, type ApiMetadataSignedUrl, type ApiMetadataUpload, type ApiOrder, type ApiOrderConsideration, type ApiOrderOffer, type ApiOrderPrice, type ApiOrderTokenMeta, type ApiOrderTxHash, type ApiOrdersQuery, type ApiPortalKey, type ApiPortalKeyCreated, type ApiPortalMe, type ApiResponse, type ApiSearchCollectionResult, type ApiSearchResult, type ApiSearchTokenResult, type ApiToken, type ApiTokenMetadata, type ApiUsageDay, type ApiWebhookCreated, type ApiWebhookEndpoint, COLLECTION_CONTRACT_MAINNET, type CancelOrderIntentParams, type CancelOrderParams, type Cancelation, type CartItem, type CollectionSort, type ConsiderationItem, type CreateCollectionIntentParams, type CreateCollectionParams, type CreateListingIntentParams, type CreateListingParams, type CreateMintIntentParams, type CreateWebhookParams, DEFAULT_RPC_URLS, type FulfillOrderIntentParams, type FulfillOrderParams, type Fulfillment, IPMarketplaceABI, type IntentStatus, type IntentType, type IpAttribute, type IpNftMetadata, MARKETPLACE_CONTRACT_MAINNET, type MakeOfferIntentParams, type MakeOfferParams, MarketplaceModule, MedialaneApiError, MedialaneClient, type MedialaneConfig, MedialaneError, type MedialaneErrorCode, type MintParams, type Network, type OfferItem, type Order, type OrderParameters, type OrderStatus, type ResolvedConfig, type RetryOptions, SUPPORTED_NETWORKS, SUPPORTED_TOKENS, type SortOrder, type SupportedTokenSymbol, type TenantPlan, type TxResult, type WebhookEventType, type WebhookStatus, buildCancellationTypedData, buildFulfillmentTypedData, buildOrderTypedData, formatAmount, getTokenByAddress, getTokenBySymbol, normalizeAddress, parseAmount, resolveConfig, shortenAddress, stringifyBigInts, u256ToBigInt };
package/dist/index.d.ts CHANGED
@@ -29,6 +29,12 @@ declare const SUPPORTED_NETWORKS: readonly ["mainnet", "sepolia"];
29
29
  type Network = (typeof SUPPORTED_NETWORKS)[number];
30
30
  declare const DEFAULT_RPC_URLS: Record<Network, string>;
31
31
 
32
+ interface RetryOptions {
33
+ maxAttempts?: number;
34
+ baseDelayMs?: number;
35
+ maxDelayMs?: number;
36
+ }
37
+
32
38
  declare const MedialaneConfigSchema: z.ZodObject<{
33
39
  network: z.ZodDefault<z.ZodEnum<["mainnet", "sepolia"]>>;
34
40
  rpcUrl: z.ZodOptional<z.ZodString>;
@@ -37,20 +43,43 @@ declare const MedialaneConfigSchema: z.ZodObject<{
37
43
  apiKey: z.ZodOptional<z.ZodString>;
38
44
  marketplaceContract: z.ZodOptional<z.ZodString>;
39
45
  collectionContract: z.ZodOptional<z.ZodString>;
46
+ retryOptions: z.ZodOptional<z.ZodObject<{
47
+ maxAttempts: z.ZodOptional<z.ZodNumber>;
48
+ baseDelayMs: z.ZodOptional<z.ZodNumber>;
49
+ maxDelayMs: z.ZodOptional<z.ZodNumber>;
50
+ }, "strip", z.ZodTypeAny, {
51
+ maxAttempts?: number | undefined;
52
+ baseDelayMs?: number | undefined;
53
+ maxDelayMs?: number | undefined;
54
+ }, {
55
+ maxAttempts?: number | undefined;
56
+ baseDelayMs?: number | undefined;
57
+ maxDelayMs?: number | undefined;
58
+ }>>;
40
59
  }, "strip", z.ZodTypeAny, {
41
60
  network: "mainnet" | "sepolia";
61
+ collectionContract?: string | undefined;
42
62
  rpcUrl?: string | undefined;
43
63
  backendUrl?: string | undefined;
44
64
  apiKey?: string | undefined;
45
65
  marketplaceContract?: string | undefined;
46
- collectionContract?: string | undefined;
66
+ retryOptions?: {
67
+ maxAttempts?: number | undefined;
68
+ baseDelayMs?: number | undefined;
69
+ maxDelayMs?: number | undefined;
70
+ } | undefined;
47
71
  }, {
72
+ collectionContract?: string | undefined;
48
73
  network?: "mainnet" | "sepolia" | undefined;
49
74
  rpcUrl?: string | undefined;
50
75
  backendUrl?: string | undefined;
51
76
  apiKey?: string | undefined;
52
77
  marketplaceContract?: string | undefined;
53
- collectionContract?: string | undefined;
78
+ retryOptions?: {
79
+ maxAttempts?: number | undefined;
80
+ baseDelayMs?: number | undefined;
81
+ maxDelayMs?: number | undefined;
82
+ } | undefined;
54
83
  }>;
55
84
  type MedialaneConfig = z.input<typeof MedialaneConfigSchema>;
56
85
  interface ResolvedConfig {
@@ -60,6 +89,7 @@ interface ResolvedConfig {
60
89
  apiKey: string | undefined;
61
90
  marketplaceContract: string;
62
91
  collectionContract: string;
92
+ retryOptions?: RetryOptions;
63
93
  }
64
94
  declare function resolveConfig(raw: MedialaneConfig): ResolvedConfig;
65
95
 
@@ -145,9 +175,12 @@ interface TxResult {
145
175
  txHash: string;
146
176
  }
147
177
 
178
+ type MedialaneErrorCode = "TOKEN_NOT_FOUND" | "COLLECTION_NOT_FOUND" | "ORDER_NOT_FOUND" | "INTENT_NOT_FOUND" | "INTENT_EXPIRED" | "RATE_LIMITED" | "NETWORK_NOT_SUPPORTED" | "APPROVAL_FAILED" | "TRANSACTION_FAILED" | "INVALID_PARAMS" | "UNAUTHORIZED" | "UNKNOWN";
179
+
148
180
  declare class MedialaneError extends Error {
181
+ readonly code: MedialaneErrorCode;
149
182
  readonly cause?: unknown | undefined;
150
- constructor(message: string, cause?: unknown | undefined);
183
+ constructor(message: string, code?: MedialaneErrorCode, cause?: unknown | undefined);
151
184
  }
152
185
 
153
186
  declare class MarketplaceModule {
@@ -165,6 +198,14 @@ declare class MarketplaceModule {
165
198
  buildCancellationTypedData(params: Record<string, unknown>, chainId: constants.StarknetChainId): TypedData;
166
199
  }
167
200
 
201
+ type CollectionSort = "recent" | "supply" | "floor" | "volume" | "name";
202
+ interface ApiCollectionsQuery {
203
+ page?: number;
204
+ limit?: number;
205
+ isKnown?: boolean;
206
+ sort?: CollectionSort;
207
+ owner?: string;
208
+ }
168
209
  type OrderStatus = "ACTIVE" | "FULFILLED" | "CANCELLED" | "EXPIRED";
169
210
  type SortOrder = "price_asc" | "price_desc" | "recent";
170
211
  type ActivityType = "transfer" | "sale" | "listing" | "offer" | "cancelled";
@@ -320,6 +361,9 @@ interface ApiCollection {
320
361
  startBlock: string;
321
362
  metadataStatus: "PENDING" | "FETCHING" | "FETCHED" | "FAILED";
322
363
  isKnown: boolean;
364
+ source: "MEDIALANE_REGISTRY" | "EXTERNAL" | "PARTNERSHIP" | "IP_TICKET" | "IP_CLUB" | "GAME";
365
+ claimedBy: string | null;
366
+ profile?: ApiCollectionProfile | null;
323
367
  floorPrice: string | null;
324
368
  totalVolume: string | null;
325
369
  holderCount: number | null;
@@ -491,15 +535,61 @@ interface CreateWebhookParams {
491
535
  events: WebhookEventType[];
492
536
  label?: string;
493
537
  }
538
+ interface ApiCollectionProfile {
539
+ contractAddress: string;
540
+ chain: string;
541
+ displayName: string | null;
542
+ description: string | null;
543
+ image: string | null;
544
+ bannerImage: string | null;
545
+ websiteUrl: string | null;
546
+ twitterUrl: string | null;
547
+ discordUrl: string | null;
548
+ telegramUrl: string | null;
549
+ updatedBy: string | null;
550
+ updatedAt: string;
551
+ }
552
+ interface ApiCreatorProfile {
553
+ walletAddress: string;
554
+ chain: string;
555
+ displayName: string | null;
556
+ bio: string | null;
557
+ avatarImage: string | null;
558
+ bannerImage: string | null;
559
+ websiteUrl: string | null;
560
+ twitterUrl: string | null;
561
+ discordUrl: string | null;
562
+ telegramUrl: string | null;
563
+ updatedAt: string;
564
+ }
565
+ interface ApiCollectionClaim {
566
+ id: string;
567
+ contractAddress: string;
568
+ chain: string;
569
+ claimantAddress: string | null;
570
+ status: "PENDING" | "AUTO_APPROVED" | "APPROVED" | "REJECTED";
571
+ verificationMethod: "ONCHAIN" | "SIGNATURE" | "MANUAL";
572
+ createdAt: string;
573
+ }
574
+ interface ApiAdminCollectionClaim extends ApiCollectionClaim {
575
+ claimantEmail: string | null;
576
+ notes: string | null;
577
+ adminNotes: string | null;
578
+ reviewedBy: string | null;
579
+ reviewedAt: string | null;
580
+ updatedAt: string;
581
+ }
494
582
 
495
583
  declare class MedialaneApiError extends Error {
496
584
  readonly status: number;
585
+ readonly code: MedialaneErrorCode;
497
586
  constructor(status: number, message: string);
498
587
  }
499
588
  declare class ApiClient {
500
589
  private readonly baseUrl;
501
590
  private readonly baseHeaders;
502
- constructor(baseUrl: string, apiKey?: string);
591
+ private readonly retryOptions;
592
+ constructor(baseUrl: string, apiKey?: string, retryOptions?: RetryOptions);
503
593
  private request;
504
594
  private get;
505
595
  private post;
@@ -512,7 +602,7 @@ declare class ApiClient {
512
602
  getToken(contract: string, tokenId: string, wait?: boolean): Promise<ApiResponse<ApiToken>>;
513
603
  getTokensByOwner(address: string, page?: number, limit?: number): Promise<ApiResponse<ApiToken[]>>;
514
604
  getTokenHistory(contract: string, tokenId: string, page?: number, limit?: number): Promise<ApiResponse<ApiActivity[]>>;
515
- getCollections(page?: number, limit?: number, isKnown?: boolean): Promise<ApiResponse<ApiCollection[]>>;
605
+ getCollections(page?: number, limit?: number, isKnown?: boolean, sort?: CollectionSort): Promise<ApiResponse<ApiCollection[]>>;
516
606
  getCollectionsByOwner(owner: string, page?: number, limit?: number): Promise<ApiResponse<ApiCollection[]>>;
517
607
  getCollection(contract: string): Promise<ApiResponse<ApiCollection>>;
518
608
  getCollectionTokens(contract: string, page?: number, limit?: number): Promise<ApiResponse<ApiToken[]>>;
@@ -547,6 +637,36 @@ declare class ApiClient {
547
637
  id: string;
548
638
  status: string;
549
639
  }>>;
640
+ /**
641
+ * Path 1: On-chain auto claim. Sends both x-api-key (tenant auth) and
642
+ * Authorization: Bearer (Clerk JWT) simultaneously.
643
+ */
644
+ claimCollection(contractAddress: string, walletAddress: string, clerkToken: string): Promise<{
645
+ verified: boolean;
646
+ collection?: ApiCollection;
647
+ reason?: string;
648
+ }>;
649
+ /**
650
+ * Path 3: Manual off-chain claim request (email-based).
651
+ */
652
+ requestCollectionClaim(params: {
653
+ contractAddress: string;
654
+ walletAddress?: string;
655
+ email: string;
656
+ notes?: string;
657
+ }): Promise<{
658
+ claim: ApiCollectionClaim;
659
+ }>;
660
+ getCollectionProfile(contractAddress: string): Promise<ApiCollectionProfile | null>;
661
+ /**
662
+ * Update collection profile. Requires Clerk JWT for ownership check.
663
+ */
664
+ updateCollectionProfile(contractAddress: string, data: Partial<Omit<ApiCollectionProfile, "contractAddress" | "chain" | "updatedBy" | "updatedAt">>, clerkToken: string): Promise<ApiCollectionProfile>;
665
+ getCreatorProfile(walletAddress: string): Promise<ApiCreatorProfile | null>;
666
+ /**
667
+ * Update creator profile. Requires Clerk JWT; wallet must match authenticated user.
668
+ */
669
+ updateCreatorProfile(walletAddress: string, data: Partial<Omit<ApiCreatorProfile, "walletAddress" | "chain" | "updatedAt">>, clerkToken: string): Promise<ApiCreatorProfile>;
550
670
  }
551
671
 
552
672
  declare class MedialaneClient {
@@ -989,4 +1109,4 @@ declare function buildFulfillmentTypedData(message: Record<string, unknown>, cha
989
1109
  */
990
1110
  declare function buildCancellationTypedData(message: Record<string, unknown>, chainId: constants.StarknetChainId): TypedData;
991
1111
 
992
- export { type ActivityType, type ApiActivitiesQuery, type ApiActivity, type ApiActivityPrice, ApiClient, type ApiCollection, type ApiIntent, type ApiIntentCreated, type ApiKeyStatus, type ApiMeta, type ApiMetadataSignedUrl, type ApiMetadataUpload, type ApiOrder, type ApiOrderConsideration, type ApiOrderOffer, type ApiOrderPrice, type ApiOrderTokenMeta, type ApiOrderTxHash, type ApiOrdersQuery, type ApiPortalKey, type ApiPortalKeyCreated, type ApiPortalMe, type ApiResponse, type ApiSearchCollectionResult, type ApiSearchResult, type ApiSearchTokenResult, type ApiToken, type ApiTokenMetadata, type ApiUsageDay, type ApiWebhookCreated, type ApiWebhookEndpoint, COLLECTION_CONTRACT_MAINNET, type CancelOrderIntentParams, type CancelOrderParams, type Cancelation, type CartItem, type ConsiderationItem, type CreateCollectionIntentParams, type CreateCollectionParams, type CreateListingIntentParams, type CreateListingParams, type CreateMintIntentParams, type CreateWebhookParams, DEFAULT_RPC_URLS, type FulfillOrderIntentParams, type FulfillOrderParams, type Fulfillment, IPMarketplaceABI, type IntentStatus, type IntentType, type IpAttribute, type IpNftMetadata, MARKETPLACE_CONTRACT_MAINNET, type MakeOfferIntentParams, type MakeOfferParams, MarketplaceModule, MedialaneApiError, MedialaneClient, type MedialaneConfig, MedialaneError, type MintParams, type Network, type OfferItem, type Order, type OrderParameters, type OrderStatus, type ResolvedConfig, SUPPORTED_NETWORKS, SUPPORTED_TOKENS, type SortOrder, type SupportedTokenSymbol, type TenantPlan, type TxResult, type WebhookEventType, type WebhookStatus, buildCancellationTypedData, buildFulfillmentTypedData, buildOrderTypedData, formatAmount, getTokenByAddress, getTokenBySymbol, normalizeAddress, parseAmount, resolveConfig, shortenAddress, stringifyBigInts, u256ToBigInt };
1112
+ export { type ActivityType, type ApiActivitiesQuery, type ApiActivity, type ApiActivityPrice, type ApiAdminCollectionClaim, ApiClient, type ApiCollection, type ApiCollectionClaim, type ApiCollectionProfile, type ApiCollectionsQuery, type ApiCreatorProfile, type ApiIntent, type ApiIntentCreated, type ApiKeyStatus, type ApiMeta, type ApiMetadataSignedUrl, type ApiMetadataUpload, type ApiOrder, type ApiOrderConsideration, type ApiOrderOffer, type ApiOrderPrice, type ApiOrderTokenMeta, type ApiOrderTxHash, type ApiOrdersQuery, type ApiPortalKey, type ApiPortalKeyCreated, type ApiPortalMe, type ApiResponse, type ApiSearchCollectionResult, type ApiSearchResult, type ApiSearchTokenResult, type ApiToken, type ApiTokenMetadata, type ApiUsageDay, type ApiWebhookCreated, type ApiWebhookEndpoint, COLLECTION_CONTRACT_MAINNET, type CancelOrderIntentParams, type CancelOrderParams, type Cancelation, type CartItem, type CollectionSort, type ConsiderationItem, type CreateCollectionIntentParams, type CreateCollectionParams, type CreateListingIntentParams, type CreateListingParams, type CreateMintIntentParams, type CreateWebhookParams, DEFAULT_RPC_URLS, type FulfillOrderIntentParams, type FulfillOrderParams, type Fulfillment, IPMarketplaceABI, type IntentStatus, type IntentType, type IpAttribute, type IpNftMetadata, MARKETPLACE_CONTRACT_MAINNET, type MakeOfferIntentParams, type MakeOfferParams, MarketplaceModule, MedialaneApiError, MedialaneClient, type MedialaneConfig, MedialaneError, type MedialaneErrorCode, type MintParams, type Network, type OfferItem, type Order, type OrderParameters, type OrderStatus, type ResolvedConfig, type RetryOptions, SUPPORTED_NETWORKS, SUPPORTED_TOKENS, type SortOrder, type SupportedTokenSymbol, type TenantPlan, type TxResult, type WebhookEventType, type WebhookStatus, buildCancellationTypedData, buildFulfillmentTypedData, buildOrderTypedData, formatAmount, getTokenByAddress, getTokenBySymbol, normalizeAddress, parseAmount, resolveConfig, shortenAddress, stringifyBigInts, u256ToBigInt };