amazon-seller-mcp
Version:
Model Context Protocol (MCP) client for Amazon Selling Partner API
63 lines (62 loc) • 1.86 kB
TypeScript
/**
* Amazon Selling Partner API Authentication Module
*/
import { AuthConfig, AuthTokens, SignableRequest } from '../types/auth.js';
/**
* Amazon Selling Partner API Authentication
*
* Handles OAuth 2.0 authentication flow, token management, and AWS Signature V4 signing
*/
export declare class AmazonAuth {
private credentials;
private region;
private marketplaceId;
private tokenCacheTimeMs;
private tokens;
/**
* Create a new AmazonAuth instance
*
* @param config Authentication configuration
*/
constructor(config: AuthConfig);
/**
* Validate that all required credentials are provided
*/
private validateCredentials;
/**
* Get the current access token, refreshing if necessary
*
* @returns Promise resolving to the access token
*/
getAccessToken(): Promise<string>;
/**
* Refresh the access token using the refresh token
*
* @returns Promise resolving to the new auth tokens
*/
refreshAccessToken(): Promise<AuthTokens>;
/**
* Sign a request with AWS Signature V4
*
* @param request Request to sign
* @returns Promise resolving to the signed request
*/
signRequest(request: SignableRequest): Promise<SignableRequest>;
/**
* Generate a signed request for the Amazon Selling Partner API
*
* @param request Request to sign
* @returns Promise resolving to the signed request with access token
*/
generateSecuredRequest(request: SignableRequest): Promise<SignableRequest>;
/**
* Get AWS Signature V4 signing key
*
* @param key Secret access key
* @param dateStamp Date in YYYYMMDD format
* @param regionName AWS region name
* @param serviceName AWS service name
* @returns Signing key
*/
private getSignatureKey;
}