/**
 * EVE Swagger Interface
 * An OpenAPI for EVE Online
 *
 * The version of the OpenAPI document: 1.33
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
import * as runtime from '../runtime';
import type { GetCharactersCharacterIdMail200Ok, GetCharactersCharacterIdMailLabelsOk, GetCharactersCharacterIdMailLists200Ok, GetCharactersCharacterIdMailMailIdOk, PostCharactersCharacterIdMailLabelsLabel, PostCharactersCharacterIdMailMail, PutCharactersCharacterIdMailMailIdContents } from '../models/index';
export interface DeleteCharactersCharacterIdMailLabelsLabelIdRequest {
    characterId: number;
    labelId: number;
    datasource?: DeleteCharactersCharacterIdMailLabelsLabelIdDatasourceEnum;
    token?: string;
}
export interface DeleteCharactersCharacterIdMailMailIdRequest {
    characterId: number;
    mailId: number;
    datasource?: DeleteCharactersCharacterIdMailMailIdDatasourceEnum;
    token?: string;
}
export interface GetCharactersCharacterIdMailRequest {
    characterId: number;
    datasource?: GetCharactersCharacterIdMailDatasourceEnum;
    ifNoneMatch?: string;
    labels?: Set<number>;
    lastMailId?: number;
    token?: string;
}
export interface GetCharactersCharacterIdMailLabelsRequest {
    characterId: number;
    datasource?: GetCharactersCharacterIdMailLabelsDatasourceEnum;
    ifNoneMatch?: string;
    token?: string;
}
export interface GetCharactersCharacterIdMailListsRequest {
    characterId: number;
    datasource?: GetCharactersCharacterIdMailListsDatasourceEnum;
    ifNoneMatch?: string;
    token?: string;
}
export interface GetCharactersCharacterIdMailMailIdRequest {
    characterId: number;
    mailId: number;
    datasource?: GetCharactersCharacterIdMailMailIdDatasourceEnum;
    ifNoneMatch?: string;
    token?: string;
}
export interface PostCharactersCharacterIdMailRequest {
    characterId: number;
    mail: PostCharactersCharacterIdMailMail;
    datasource?: PostCharactersCharacterIdMailDatasourceEnum;
    token?: string;
}
export interface PostCharactersCharacterIdMailLabelsRequest {
    characterId: number;
    label: PostCharactersCharacterIdMailLabelsLabel;
    datasource?: PostCharactersCharacterIdMailLabelsDatasourceEnum;
    token?: string;
}
export interface PutCharactersCharacterIdMailMailIdRequest {
    characterId: number;
    mailId: number;
    contents: PutCharactersCharacterIdMailMailIdContents;
    datasource?: PutCharactersCharacterIdMailMailIdDatasourceEnum;
    token?: string;
}
/**
 *
 */
export declare class MailApi extends runtime.BaseAPI {
    /**
     * Delete a mail label  ---
     * Delete a mail label
     */
    deleteCharactersCharacterIdMailLabelsLabelIdRaw(requestParameters: DeleteCharactersCharacterIdMailLabelsLabelIdRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>>;
    /**
     * Delete a mail label  ---
     * Delete a mail label
     */
    deleteCharactersCharacterIdMailLabelsLabelId(requestParameters: DeleteCharactersCharacterIdMailLabelsLabelIdRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void>;
    /**
     * Delete a mail  ---
     * Delete a mail
     */
    deleteCharactersCharacterIdMailMailIdRaw(requestParameters: DeleteCharactersCharacterIdMailMailIdRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>>;
    /**
     * Delete a mail  ---
     * Delete a mail
     */
    deleteCharactersCharacterIdMailMailId(requestParameters: DeleteCharactersCharacterIdMailMailIdRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void>;
    /**
     * Return the 50 most recent mail headers belonging to the character that match the query criteria. Queries can be filtered by label, and last_mail_id can be used to paginate backwards  ---  This route is cached for up to 30 seconds
     * Return mail headers
     */
    getCharactersCharacterIdMailRaw(requestParameters: GetCharactersCharacterIdMailRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Array<GetCharactersCharacterIdMail200Ok>>>;
    /**
     * Return the 50 most recent mail headers belonging to the character that match the query criteria. Queries can be filtered by label, and last_mail_id can be used to paginate backwards  ---  This route is cached for up to 30 seconds
     * Return mail headers
     */
    getCharactersCharacterIdMail(requestParameters: GetCharactersCharacterIdMailRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Array<GetCharactersCharacterIdMail200Ok>>;
    /**
     * Return a list of the users mail labels, unread counts for each label and a total unread count.  ---  This route is cached for up to 30 seconds
     * Get mail labels and unread counts
     */
    getCharactersCharacterIdMailLabelsRaw(requestParameters: GetCharactersCharacterIdMailLabelsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<GetCharactersCharacterIdMailLabelsOk>>;
    /**
     * Return a list of the users mail labels, unread counts for each label and a total unread count.  ---  This route is cached for up to 30 seconds
     * Get mail labels and unread counts
     */
    getCharactersCharacterIdMailLabels(requestParameters: GetCharactersCharacterIdMailLabelsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<GetCharactersCharacterIdMailLabelsOk>;
    /**
     * Return all mailing lists that the character is subscribed to  ---  This route is cached for up to 120 seconds
     * Return mailing list subscriptions
     */
    getCharactersCharacterIdMailListsRaw(requestParameters: GetCharactersCharacterIdMailListsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Array<GetCharactersCharacterIdMailLists200Ok>>>;
    /**
     * Return all mailing lists that the character is subscribed to  ---  This route is cached for up to 120 seconds
     * Return mailing list subscriptions
     */
    getCharactersCharacterIdMailLists(requestParameters: GetCharactersCharacterIdMailListsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Array<GetCharactersCharacterIdMailLists200Ok>>;
    /**
     * Return the contents of an EVE mail  ---  This route is cached for up to 30 seconds
     * Return a mail
     */
    getCharactersCharacterIdMailMailIdRaw(requestParameters: GetCharactersCharacterIdMailMailIdRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<GetCharactersCharacterIdMailMailIdOk>>;
    /**
     * Return the contents of an EVE mail  ---  This route is cached for up to 30 seconds
     * Return a mail
     */
    getCharactersCharacterIdMailMailId(requestParameters: GetCharactersCharacterIdMailMailIdRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<GetCharactersCharacterIdMailMailIdOk>;
    /**
     * Create and send a new mail  ---
     * Send a new mail
     */
    postCharactersCharacterIdMailRaw(requestParameters: PostCharactersCharacterIdMailRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<number>>;
    /**
     * Create and send a new mail  ---
     * Send a new mail
     */
    postCharactersCharacterIdMail(requestParameters: PostCharactersCharacterIdMailRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<number>;
    /**
     * Create a mail label  ---
     * Create a mail label
     */
    postCharactersCharacterIdMailLabelsRaw(requestParameters: PostCharactersCharacterIdMailLabelsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<number>>;
    /**
     * Create a mail label  ---
     * Create a mail label
     */
    postCharactersCharacterIdMailLabels(requestParameters: PostCharactersCharacterIdMailLabelsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<number>;
    /**
     * Update metadata about a mail  ---
     * Update metadata about a mail
     */
    putCharactersCharacterIdMailMailIdRaw(requestParameters: PutCharactersCharacterIdMailMailIdRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>>;
    /**
     * Update metadata about a mail  ---
     * Update metadata about a mail
     */
    putCharactersCharacterIdMailMailId(requestParameters: PutCharactersCharacterIdMailMailIdRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void>;
}
/**
 * @export
 */
export declare const DeleteCharactersCharacterIdMailLabelsLabelIdDatasourceEnum: {
    readonly Tranquility: "tranquility";
};
export type DeleteCharactersCharacterIdMailLabelsLabelIdDatasourceEnum = typeof DeleteCharactersCharacterIdMailLabelsLabelIdDatasourceEnum[keyof typeof DeleteCharactersCharacterIdMailLabelsLabelIdDatasourceEnum];
/**
 * @export
 */
export declare const DeleteCharactersCharacterIdMailMailIdDatasourceEnum: {
    readonly Tranquility: "tranquility";
};
export type DeleteCharactersCharacterIdMailMailIdDatasourceEnum = typeof DeleteCharactersCharacterIdMailMailIdDatasourceEnum[keyof typeof DeleteCharactersCharacterIdMailMailIdDatasourceEnum];
/**
 * @export
 */
export declare const GetCharactersCharacterIdMailDatasourceEnum: {
    readonly Tranquility: "tranquility";
};
export type GetCharactersCharacterIdMailDatasourceEnum = typeof GetCharactersCharacterIdMailDatasourceEnum[keyof typeof GetCharactersCharacterIdMailDatasourceEnum];
/**
 * @export
 */
export declare const GetCharactersCharacterIdMailLabelsDatasourceEnum: {
    readonly Tranquility: "tranquility";
};
export type GetCharactersCharacterIdMailLabelsDatasourceEnum = typeof GetCharactersCharacterIdMailLabelsDatasourceEnum[keyof typeof GetCharactersCharacterIdMailLabelsDatasourceEnum];
/**
 * @export
 */
export declare const GetCharactersCharacterIdMailListsDatasourceEnum: {
    readonly Tranquility: "tranquility";
};
export type GetCharactersCharacterIdMailListsDatasourceEnum = typeof GetCharactersCharacterIdMailListsDatasourceEnum[keyof typeof GetCharactersCharacterIdMailListsDatasourceEnum];
/**
 * @export
 */
export declare const GetCharactersCharacterIdMailMailIdDatasourceEnum: {
    readonly Tranquility: "tranquility";
};
export type GetCharactersCharacterIdMailMailIdDatasourceEnum = typeof GetCharactersCharacterIdMailMailIdDatasourceEnum[keyof typeof GetCharactersCharacterIdMailMailIdDatasourceEnum];
/**
 * @export
 */
export declare const PostCharactersCharacterIdMailDatasourceEnum: {
    readonly Tranquility: "tranquility";
};
export type PostCharactersCharacterIdMailDatasourceEnum = typeof PostCharactersCharacterIdMailDatasourceEnum[keyof typeof PostCharactersCharacterIdMailDatasourceEnum];
/**
 * @export
 */
export declare const PostCharactersCharacterIdMailLabelsDatasourceEnum: {
    readonly Tranquility: "tranquility";
};
export type PostCharactersCharacterIdMailLabelsDatasourceEnum = typeof PostCharactersCharacterIdMailLabelsDatasourceEnum[keyof typeof PostCharactersCharacterIdMailLabelsDatasourceEnum];
/**
 * @export
 */
export declare const PutCharactersCharacterIdMailMailIdDatasourceEnum: {
    readonly Tranquility: "tranquility";
};
export type PutCharactersCharacterIdMailMailIdDatasourceEnum = typeof PutCharactersCharacterIdMailMailIdDatasourceEnum[keyof typeof PutCharactersCharacterIdMailMailIdDatasourceEnum];
//# sourceMappingURL=MailApi.d.ts.map