export declare const Region: {
    readonly NA: "https://advertising-api.amazon.com";
    readonly EU: "https://advertising-api-eu.amazon.com";
    readonly FE: "https://advertising-api-fe.amazon.com";
};
export type RegionKey = keyof typeof Region;
export type RegionValue = typeof Region[RegionKey];
export interface GeographicConsentData {
    ipAddress?: string;
}
export interface AmazonConsentFormat {
    amznAdStorage?: 'GRANTED' | 'DENIED';
    amznUserData?: 'GRANTED' | 'DENIED';
}
export interface ConsentData {
    geo?: GeographicConsentData;
    amazonConsent?: AmazonConsentFormat;
    tcf?: string;
    gpp?: string;
}
export interface CustomAttributeV1 {
    name: string;
    value: string;
}
export declare enum MatchKeyTypeV1 {
    EMAIL = "EMAIL",
    PHONE = "PHONE",
    FIRST_NAME = "FIRST_NAME",
    LAST_NAME = "LAST_NAME",
    ADDRESS = "ADDRESS",
    CITY = "CITY",
    STATE = "STATE",
    POSTAL = "POSTAL",
    MAID = "MAID",
    RAMP_ID = "RAMP_ID",
    MATCH_ID = "MATCH_ID"
}
export interface MatchKeyV1 {
    type: MatchKeyTypeV1;
    values: [string];
}
export declare enum ConversionTypeV2 {
    ADD_TO_SHOPPING_CART = "ADD_TO_SHOPPING_CART",
    APPLICATION = "APPLICATION",
    CHECKOUT = "CHECKOUT",
    CONTACT = "CONTACT",
    LEAD = "LEAD",
    OFF_AMAZON_PURCHASES = "OFF_AMAZON_PURCHASES",
    MOBILE_APP_FIRST_START = "MOBILE_APP_FIRST_START",
    PAGE_VIEW = "PAGE_VIEW",
    SEARCH = "SEARCH",
    SIGN_UP = "SIGN_UP",
    SUBSCRIBE = "SUBSCRIBE",
    OTHER = "OTHER"
}
export declare enum CurrencyCodeV1 {
    AED = "AED",
    AUD = "AUD",
    BRL = "BRL",
    CAD = "CAD",
    CNY = "CNY",
    EUR = "EUR",
    GBP = "GBP",
    INR = "INR",
    JPY = "JPY",
    MXN = "MXN",
    SAR = "SAR",
    SEK = "SEK",
    SGD = "SGD",
    TRY = "TRY",
    USD = "USD",
    DKK = "DKK",
    NOK = "NOK",
    NZD = "NZD"
}
export interface EventData {
    name: string;
    eventType: ConversionTypeV2;
    eventActionSource: string;
    countryCode: string;
    timestamp: string;
    matchKeys?: MatchKeyV1[];
    value?: number;
    currencyCode?: CurrencyCodeV1;
    unitsSold?: number;
    clientDedupeId?: string;
    dataProcessingOptions?: string[];
    consent?: ConsentData;
    customAttributes?: CustomAttributeV1[];
}
export interface RefreshTokenResponse {
    access_token: string;
    token_type: string;
    expires_in: number;
    refresh_token: string;
}
export interface SubErrorV1 {
    errorCode?: number;
    errorType?: string;
    errorMessage?: string;
}
export interface EventDataSuccessResponseV1 {
    index: number;
    message?: string;
}
export interface EventDataErrorResponseV1 {
    httpStatusCode?: string;
    itemRequestId?: string;
    index: number;
    itemId?: string;
    subErrors?: SubErrorV1[];
}
export interface ImportConversionEventsResponse {
    success?: EventDataSuccessResponseV1[];
    error?: EventDataErrorResponseV1[];
}
