/**
 * Synapse REST API
 * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
 *
 * The version of the OpenAPI document: v1
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
import type { DownloadSort } from './DownloadSort';
/**
 * Request to get a single page of files from the user's download list for files that are currently available for download.
 * @export
 * @interface AvailableFilesRequest
 */
export interface AvailableFilesRequest {
    /**
     * Required. For this type the value should be: 'org.sagebionetworks.repo.model.download.AvailableFilesRequest'
     * @type {string}
     * @memberof AvailableFilesRequest
     */
    concreteType: AvailableFilesRequestConcreteTypeEnum;
    /**
     * Forward the resulting nextPageToken from a previous request to get the next page of results.
     * @type {string}
     * @memberof AvailableFilesRequest
     */
    nextPageToken?: string;
    /**
     * Optional. Defines how the query results should be sorted. If excluded a default sort will be used.
     * @type {Array<DownloadSort>}
     * @memberof AvailableFilesRequest
     */
    sort?: Array<DownloadSort>;
    /**
     * Optional. Defines how the query results should be filtered. If excluded all available files will be returned.
     * @type {string}
     * @memberof AvailableFilesRequest
     */
    filter?: AvailableFilesRequestFilterEnum;
}
/**
 * @export
 */
export declare const AvailableFilesRequestConcreteTypeEnum: {
    readonly org_sagebionetworks_repo_model_download_AvailableFilesRequest: "org.sagebionetworks.repo.model.download.AvailableFilesRequest";
};
export type AvailableFilesRequestConcreteTypeEnum = typeof AvailableFilesRequestConcreteTypeEnum[keyof typeof AvailableFilesRequestConcreteTypeEnum];
/**
 * @export
 */
export declare const AvailableFilesRequestFilterEnum: {
    readonly eligibleForPackaging: "eligibleForPackaging";
    readonly ineligibleForPackaging: "ineligibleForPackaging";
};
export type AvailableFilesRequestFilterEnum = typeof AvailableFilesRequestFilterEnum[keyof typeof AvailableFilesRequestFilterEnum];
/**
 * Check if a given object implements the AvailableFilesRequest interface.
 */
export declare function instanceOfAvailableFilesRequest(value: object): value is AvailableFilesRequest;
export declare function AvailableFilesRequestFromJSON(json: any): AvailableFilesRequest;
export declare function AvailableFilesRequestFromJSONTyped(json: any, ignoreDiscriminator: boolean): AvailableFilesRequest;
export declare function AvailableFilesRequestToJSON(json: any): AvailableFilesRequest;
export declare function AvailableFilesRequestToJSONTyped(value?: AvailableFilesRequest | null, ignoreDiscriminator?: boolean): any;
