<?php

declare (strict_types=1);
namespace idoit\Module\JDisc\Graphql\Schema\Model;

use Axtiva\FlexibleGraphql\Resolver\AutoGenerationInterface;

/**
 * This code is @generated by axtiva/flexible-graphql-php
 * if you want to extend it or change, then remove interface AutoGenerationInterface
 * and it will be managed by you, not axtiva/flexible-graphql-php code generator
 * PHP representation of graphql type OneTimeDownloadLink
 * One time download link. The link will be deleted after download will be initiated or after access token expires. */
final class OneTimeDownloadLinkType implements AutoGenerationInterface, DownloadLinkInterface
{
    /**
     * Generated content ID used to identify downloads content.
     */
    public $contentId = null;
    /**
     * Access token for download data.
Provided access token is independent of discovery session and client. The expired time of the token limits content life-time.
     */
    public ?string $accessToken = null;
    /**
     * Base download link URL. To build full URL client must append [protocol]://[server]/{baseUrl}/{contentId}.
The URL is protected with Authorization: Bearer [accessToken].
     */
    public ?string $baseUrl = null;
    /**
     * The link is valid for the given duration in seconds
     */
    public $ttlSeconds = null;
}