/**
 * Apideck
 * The Apideck OpenAPI Spec: SDK Optimized
 *
 * The version of the OpenAPI document: 10.13.0
 * Contact: support@apideck.com
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
import { PassThroughBody } from './PassThroughBody';
import { SharedLinkTarget } from './SharedLinkTarget';
/**
 *
 * @export
 * @interface SharedLink
 */
export interface SharedLink {
    /**
     * The ID of the file or folder to link.
     * @type {string}
     * @memberof SharedLink
     */
    target_id: string | null;
    /**
     * The URL that can be used to view the file.
     * @type {string}
     * @memberof SharedLink
     */
    readonly url?: string | null;
    /**
     * The URL that can be used to download the file.
     * @type {string}
     * @memberof SharedLink
     */
    download_url?: string | null;
    /**
     *
     * @type {SharedLinkTarget}
     * @memberof SharedLink
     */
    target?: SharedLinkTarget;
    /**
     * The scope of the shared link.
     * @type {string}
     * @memberof SharedLink
     */
    scope?: SharedLinkScope;
    /**
     * Indicated if the shared link is password protected.
     * @type {boolean}
     * @memberof SharedLink
     */
    readonly password_protected?: boolean | null;
    /**
     * Optional password for the shared link.
     * @type {string}
     * @memberof SharedLink
     */
    password?: string | null;
    /**
     *
     * @type {Date}
     * @memberof SharedLink
     */
    readonly expires_at?: Date | null;
    /**
     * The date and time when the object was last updated.
     * @type {Date}
     * @memberof SharedLink
     */
    readonly updated_at?: Date | null;
    /**
     * The date and time when the object was created.
     * @type {Date}
     * @memberof SharedLink
     */
    readonly created_at?: Date | null;
    /**
     *
     * @type {PassThroughBody}
     * @memberof SharedLink
     */
    pass_through?: PassThroughBody;
}
/**
 * @export
 * @enum {string}
 */
export declare enum SharedLinkScope {
    public = "public",
    company = "company"
}
export declare function SharedLinkFromJSON(json: any): SharedLink;
export declare function SharedLinkFromJSONTyped(json: any, ignoreDiscriminator: boolean): SharedLink;
export declare function SharedLinkToJSON(value?: SharedLink | null): any;
