import { Codec, GetType } from 'purify-ts'; import { HttpClient, RequestMeta } from '../http'; import { NextToken } from '../parsing'; /** * List of supported strings. * Could probably define an enum for this * http://docs.developer.amazonservices.com/en_CA/reports/Reports_ReportType.html#ReportTypeCategories__ListingsReports */ export declare const ReportType: Codec; export declare type ReportType = GetType; export interface RequestReportParameters { ReportType: ReportType; StartDate?: Date; EndDate?: Date; ReportOptions?: string; MarketplaceIdList?: string[]; } export declare const ReportRequestInfo: Codec<{ ReportRequestId: string; ReportType: string | undefined; StartDate: Date | undefined; EndDate: Date | undefined; Scheduled: boolean | undefined; SubmittedDate: Date | undefined; ReportProcessingStatus: string | undefined; GeneratedReportId: string | undefined; StartedProcessingDate: Date | undefined; CompletedDate: Date | undefined; }>; export declare type ReportRequestInfo = GetType; export declare type ReportProcessing = '_SUBMITTED_' | '_IN_PROGRESS_' | '_CANCELLED_' | '_DONE_' | '_DONE_NO_DATA_' | 'All'; export declare enum ScheduleEnum { _15_MINUTES_ = "_15_MINUTES_", _30_MINUTES_ = "_30_MINUTES_", _1_HOUR_ = "_1_HOUR_", _2_HOURS_ = "_2_HOURS_", _4_HOURS_ = "_4_HOURS_", _8_HOURS_ = "_8_HOURS_", _12_HOURS_ = "_12_HOURS_", _1_DAY_ = "_1_DAY_", _2_DAYS_ = "_2_DAYS_", _72_HOURS_ = "_72_HOURS_", _1_WEEK_ = "_1_WEEK_", _14_DAYS_ = "_14_DAYS_", _15_DAYS_ = "_15_DAYS_", _30_DAYS_ = "_30_DAYS_", _NEVER_ = "_NEVER_" } export declare type ScheduleType = '_15_MINUTES_' | '_30_MINUTES_' | '_1_HOUR_' | '_2_HOURS_' | '_4_HOURS_' | '_8_HOURS_' | '_12_HOURS_' | '_1_DAY_' | '_2_DAYS_' | '_72_HOURS_' | '_1_WEEK_' | '_14_DAYS_' | '_15_DAYS_' | '_30_DAYS_' | '_NEVER_'; export interface GetReportRequestListParameters { ReportRequestIdList?: string[]; ReportTypeList?: ReportType[]; ReportProcessingStatusList?: ReportProcessing[]; MaxCount?: number; RequestedFromDate?: Date; RequestedToDate?: Date; } export declare const GetReportRequestListResult: Codec<{ NextToken: NextToken<"GetReportRequestList"> | undefined; HasNext: boolean | undefined; ReportRequestInfo: "" | { ReportRequestId: string; ReportType: string | undefined; StartDate: Date | undefined; EndDate: Date | undefined; Scheduled: boolean | undefined; SubmittedDate: Date | undefined; ReportProcessingStatus: string | undefined; GeneratedReportId: string | undefined; StartedProcessingDate: Date | undefined; CompletedDate: Date | undefined; } | { ReportRequestId: string; ReportType: string | undefined; StartDate: Date | undefined; EndDate: Date | undefined; Scheduled: boolean | undefined; SubmittedDate: Date | undefined; ReportProcessingStatus: string | undefined; GeneratedReportId: string | undefined; StartedProcessingDate: Date | undefined; CompletedDate: Date | undefined; }[] | undefined; }>; export declare type GetReportRequestListResult = GetType; export interface GetReportRequestCountParameters { ReportTypeList?: ReportType[]; ReportProcessingStatusList?: ReportProcessing[]; RequestedFromDate?: Date; RequestedToDate?: Date; } export declare const GetReportRequestCount: Codec<{ Count: number; }>; export declare type GetReportRequestCount = GetType; export interface CancelReportRequestsParameters { ReportRequestIdList?: string[]; ReportTypeList?: ReportType[]; ReportProcessingStatusList?: ReportProcessing[]; RequestedFromDate?: Date; RequestedToDate?: Date; } export declare const CancelReportRequests: Codec<{ Count: number; ReportRequestInfo: "" | { ReportRequestId: string; ReportType: string | undefined; StartDate: Date | undefined; EndDate: Date | undefined; Scheduled: boolean | undefined; SubmittedDate: Date | undefined; ReportProcessingStatus: string | undefined; GeneratedReportId: string | undefined; StartedProcessingDate: Date | undefined; CompletedDate: Date | undefined; } | { ReportRequestId: string; ReportType: string | undefined; StartDate: Date | undefined; EndDate: Date | undefined; Scheduled: boolean | undefined; SubmittedDate: Date | undefined; ReportProcessingStatus: string | undefined; GeneratedReportId: string | undefined; StartedProcessingDate: Date | undefined; CompletedDate: Date | undefined; }[] | undefined; }>; export declare type CancelReportRequests = GetType; export interface GetReportListParameters { MaxCount?: number; ReportTypeList?: ReportType[]; Acknowledged?: boolean; ReportRequestIdList?: string[]; AvailableFromDate?: Date; AvailableToDate?: Date; } export declare const GetReportListResult: Codec<{ HasNext: boolean; NextToken: NextToken<"GetReportList"> | undefined; ReportInfo: "" | { ReportId: string; ReportType: string; ReportRequestId: string | undefined; AvailableDate: Date | undefined; Acknowledged: boolean | undefined; AcknowledgedDate: Date | undefined; } | { ReportId: string; ReportType: string; ReportRequestId: string | undefined; AvailableDate: Date | undefined; Acknowledged: boolean | undefined; AcknowledgedDate: Date | undefined; }[] | undefined; }>; export declare type GetReportListResult = GetType; export declare const GetReportCount: Codec<{ Count: number; }>; export interface GetReportCountParameters { ReportTypeList?: ReportType[]; Acknowledged?: boolean; AvailableFromDate?: Date; AvailableToDate?: Date; } export declare type Report = string; export declare type GetReportCount = GetType; export interface ManageReportScheduleParameters { ReportType: ReportType; Schedule: ScheduleType; ScheduleDate?: Date; } export declare const ManageReportSchedule: Codec<{ Count: number; ReportSchedule: "" | { ReportType: string; Schedule: ScheduleEnum; ScheduledDate: Date; } | { ReportType: string; Schedule: ScheduleEnum; ScheduledDate: Date; }[] | undefined; }>; export declare type ManageReportSchedule = GetType; export interface GetReportScheduleListParameters { ReportTypeList?: ReportType[]; } export declare const GetReportScheduleList: Codec<{ NextToken: NextToken<"GetReportScheduleList"> | undefined; HasNext: boolean; ReportSchedule: "" | { ReportType: string; Schedule: ScheduleEnum; ScheduledDate: Date; } | { ReportType: string; Schedule: ScheduleEnum; ScheduledDate: Date; }[] | undefined; }>; export declare type GetReportScheduleList = GetType; export interface GetReportScheduleCountParameters { ReportTypeList?: ReportType; } export declare const GetReportScheduleCount: Codec<{ Count: number; }>; export declare type GetReportScheduleCount = GetType; export interface UpdateReportAcknowledgementsParameters { ReportIdList: string[]; Acknowledged?: boolean; } export declare const UpdateReportAcknowledgements: Codec<{ Count: number | undefined; ReportInfo: "" | { ReportId: string; ReportType: string; ReportRequestId: string | undefined; AvailableDate: Date | undefined; Acknowledged: boolean | undefined; AcknowledgedDate: Date | undefined; } | { ReportId: string; ReportType: string; ReportRequestId: string | undefined; AvailableDate: Date | undefined; Acknowledged: boolean | undefined; AcknowledgedDate: Date | undefined; }[] | undefined; }>; export declare type UpdateReportAcknowledgements = GetType; export declare const UpdateReportAcknowledgementsResponse: Codec<{ UpdateReportAcknowledgementsResponse: { UpdateReportAcknowledgementsResult: { Count: number | undefined; ReportInfo: "" | { ReportId: string; ReportType: string; ReportRequestId: string | undefined; AvailableDate: Date | undefined; Acknowledged: boolean | undefined; AcknowledgedDate: Date | undefined; } | { ReportId: string; ReportType: string; ReportRequestId: string | undefined; AvailableDate: Date | undefined; Acknowledged: boolean | undefined; AcknowledgedDate: Date | undefined; }[] | undefined; }; }; }>; export interface GetReportParameters { ReportId: string; } export declare class Reports { private httpClient; constructor(httpClient: HttpClient); updateReportAcknowledgements(parameters: UpdateReportAcknowledgementsParameters): Promise<[UpdateReportAcknowledgements, RequestMeta]>; getReportScheduleCount(parameters?: GetReportScheduleCountParameters): Promise<[GetReportScheduleCount, RequestMeta]>; /** * getReportScheduleListByNextToken cannot be called * http://docs.developer.amazonservices.com/en_CA/reports/Reports_GetReportScheduleListByNextToken.html */ getReportScheduleList(parameters?: GetReportScheduleListParameters): Promise<[GetReportScheduleList, RequestMeta]>; manageReportSchedule(parameters: ManageReportScheduleParameters): Promise<[ManageReportSchedule, RequestMeta]>; getReport(parameters: GetReportParameters): Promise<[Report, RequestMeta]>; getReportCount(parameters?: GetReportCountParameters): Promise<[GetReportCount, RequestMeta]>; getReportListByNextToken(nextToken: NextToken<'GetReportList'>): Promise<[GetReportListResult, RequestMeta]>; getReportList(parameters?: GetReportListParameters): Promise<[GetReportListResult, RequestMeta]>; cancelReportRequests(parameters?: CancelReportRequestsParameters): Promise<[CancelReportRequests, RequestMeta]>; getReportRequestCount(parameters?: GetReportRequestCountParameters): Promise<[GetReportRequestCount, RequestMeta]>; getReportRequestListByNextToken(nextToken: NextToken<'GetReportRequestList'>): Promise<[GetReportRequestListResult, RequestMeta]>; getReportRequestList(parameters?: GetReportRequestListParameters): Promise<[GetReportRequestListResult, RequestMeta]>; requestReport(parameters: RequestReportParameters): Promise<[ReportRequestInfo, RequestMeta]>; }