import type { SlasTokenConfig, SlasTokenResponse, SlasRegisteredLoginConfig } from './types.js';
/**
 * Retrieves a guest shopper access token from SLAS.
 *
 * - **Private client** (slasClientSecret set): Uses `client_credentials` grant.
 * - **Public client** (no secret): Uses PKCE authorization code flow with `hint=guest`.
 *
 * @param config - SLAS token configuration
 * @returns The token response including access_token and refresh_token
 */
export declare function getGuestToken(config: SlasTokenConfig): Promise<SlasTokenResponse>;
/**
 * Retrieves a registered customer access token from SLAS.
 *
 * Uses the `/oauth2/login` endpoint with shopper credentials, then exchanges
 * the authorization code for an access token.
 *
 * - **Public client**: Uses PKCE for code exchange.
 * - **Private client**: Uses client credentials (Basic auth) for code exchange.
 *
 * @param config - SLAS token configuration including shopper credentials
 * @returns The token response including access_token and refresh_token
 */
export declare function getRegisteredToken(config: SlasRegisteredLoginConfig): Promise<SlasTokenResponse>;
