import type { NetworkClient } from '@sudobility/types'; import type { IndexerAddressValidationResponse, IndexerAuthenticationStatusResponse, IndexerBlockStatusResponse, IndexerContractPermissionsResponse, IndexerDelegatedFromResponse, IndexerDelegatedToResponse, IndexerEmailAccountsResponse, IndexerEntitlementResponse, IndexerKYCInitiateResponse, IndexerKYCStatusResponse, IndexerLeaderboardResponse, IndexerNameResolutionResponse, IndexerNameServiceResponse, IndexerNonceResponse, IndexerOAuthAuthorizeResponse, IndexerOAuthChallengeResponse, IndexerOAuthClientInfoResponse, IndexerOAuthTokenResponse, IndexerOAuthUserInfoResponse, IndexerOAuthVerifyResponse, IndexerPointsInfoResponse, IndexerPointsResponse, IndexerReferralCodeResponse, IndexerReferralStatsResponse, IndexerSignInMessageResponse, IndexerSiteStatsResponse, IndexerTemplateCreateRequest, IndexerTemplateData, IndexerTemplateDeleteResponse, IndexerTemplateListResponse, IndexerTemplateResponse, IndexerTemplateUpdateRequest, IndexerWalletPermissionsResponse, IndexerWebhookCreateRequest, IndexerWebhookData, IndexerWebhookDeleteResponse, IndexerWebhookListResponse, IndexerWebhookResponse } from '@sudobility/mail_box_types'; import type { IndexerUserAuth } from '../types'; export type { IndexerReferralCodeData as ReferralCodeData } from '@sudobility/mail_box_types'; export type { IndexerReferralCodeResponse as ReferralCodeResponse } from '@sudobility/mail_box_types'; export type { IndexerReferralConsumptionData as ReferredWallet } from '@sudobility/mail_box_types'; export type { IndexerReferralStatsData as ReferralStatsData } from '@sudobility/mail_box_types'; export type { IndexerReferralStatsResponse as ReferralStatsResponse } from '@sudobility/mail_box_types'; export type { IndexerPointsInfoSiteStats as PointsInfoSiteStats } from '@sudobility/mail_box_types'; export type { IndexerPointsInfoTopUser as PointsInfoTopUser } from '@sudobility/mail_box_types'; export type { IndexerPointsInfoData as PointsInfoData } from '@sudobility/mail_box_types'; export type { IndexerPointsInfoResponse as PointsInfoResponse } from '@sudobility/mail_box_types'; export type MailTemplate = IndexerTemplateData; export type MailTemplateCreateRequest = IndexerTemplateCreateRequest; export type MailTemplateUpdateRequest = IndexerTemplateUpdateRequest; export type MailTemplateResponse = IndexerTemplateResponse; export type MailTemplatesListResponse = IndexerTemplateListResponse; export type MailTemplateDeleteResponse = IndexerTemplateDeleteResponse; export interface MailTemplatesListParams { active?: boolean; limit?: number; offset?: number; } export type Webhook = IndexerWebhookData; export type WebhookCreateRequest = IndexerWebhookCreateRequest; export type WebhookResponse = IndexerWebhookResponse; export type WebhooksListResponse = IndexerWebhookListResponse; export type WebhookDeleteResponse = IndexerWebhookDeleteResponse; export interface WebhooksListParams { active?: boolean; limit?: number; offset?: number; } export declare class IndexerClient { private readonly baseUrl; private readonly dev; private readonly networkClient; constructor(endpointUrl: string, networkClient: NetworkClient, dev?: boolean); validateUsername(username: string): Promise; getMessage(chainId: number, walletAddress: string, domain: string, url: string): Promise; getPointsInfo(): Promise; getPointsLeaderboard(count?: number): Promise; getPointsSiteStats(): Promise; getWalletAccounts(walletAddress: string, auth: IndexerUserAuth, referralCode?: string): Promise; getDelegatedTo(walletAddress: string, auth: IndexerUserAuth): Promise; getDelegatedFrom(walletAddress: string, auth: IndexerUserAuth): Promise; createNonce(username: string, auth: IndexerUserAuth): Promise; getNonce(username: string, auth: IndexerUserAuth): Promise; getEntitlement(walletAddress: string, auth: IndexerUserAuth): Promise; getPointsBalance(walletAddress: string, auth: IndexerUserAuth): Promise; getReferralCode(walletAddress: string, auth: IndexerUserAuth): Promise; getReferralStats(referralCode: string): Promise; getWalletNames(walletAddress: string, auth: IndexerUserAuth): Promise; resolveNameToAddress(name: string): Promise; createMailTemplate(walletAddress: string, auth: IndexerUserAuth, template: MailTemplateCreateRequest): Promise; getMailTemplates(walletAddress: string, auth: IndexerUserAuth, params?: MailTemplatesListParams): Promise; getMailTemplate(walletAddress: string, templateId: string, auth: IndexerUserAuth): Promise; updateMailTemplate(walletAddress: string, templateId: string, auth: IndexerUserAuth, updates: MailTemplateUpdateRequest): Promise; deleteMailTemplate(walletAddress: string, templateId: string, auth: IndexerUserAuth): Promise; createWebhook(walletAddress: string, auth: IndexerUserAuth, webhook: WebhookCreateRequest): Promise; getWebhooks(walletAddress: string, auth: IndexerUserAuth, params?: WebhooksListParams): Promise; getWebhook(walletAddress: string, webhookId: string, auth: IndexerUserAuth): Promise; deleteWebhook(walletAddress: string, webhookId: string, auth: IndexerUserAuth): Promise; createAuthChallenge(walletIdentifier: string, clientId: string, redirectUri: string, deviceFingerprint?: string): Promise; verifyAuthSignature(sessionId: string, signature: string, chainType: 'evm' | 'solana', currentWallet: string): Promise; authorizeOAuth(clientId: string, redirectUri: string, responseType: string, scope: string, state: string, sessionId: string, codeChallenge?: string, codeChallengeMethod?: string, nonce?: string, privacy?: string): Promise; exchangeOAuthToken(grantType: 'authorization_code' | 'refresh_token', clientId: string, code?: string, redirectUri?: string, clientSecret?: string, codeVerifier?: string, refreshToken?: string): Promise; getOAuthUserInfo(accessToken: string): Promise; revokeOAuthToken(token: string, tokenTypeHint?: string): Promise; getOAuthClientInfo(clientId: string): Promise; initiateKYC(walletAddress: string, auth: IndexerUserAuth, verificationLevel: 'basic' | 'enhanced' | 'accredited'): Promise; getKYCStatus(walletAddress: string, auth: IndexerUserAuth): Promise; checkAuthenticated(walletAddress: string, auth: IndexerUserAuth): Promise; getBlockStatus(): Promise; getContractPermissions(contractAddress: string, chainId: number, testNet?: boolean): Promise; getWalletPermissions(walletAddress: string, chainId: number, testNet?: boolean): Promise; } //# sourceMappingURL=IndexerClient.d.ts.map