{"version":3,"sources":["../../src/services/tokens.ts"],"names":[],"mappings":"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","file":"tokens.mjs","sourcesContent":["import { AppwriteException, Client, type Payload } from '../client';\nimport type { Models } from '../models';\n\nexport class Tokens {\n    client: Client;\n\n    constructor(client: Client) {\n        this.client = client;\n    }\n\n    /**\n     * List all the tokens created for a specific file or bucket. You can use the query params to filter your results.\n     *\n     * @param {string} params.bucketId - Storage bucket unique ID. You can create a new storage bucket using the Storage service [server integration](https://appwrite.io/docs/server/storage#createBucket).\n     * @param {string} params.fileId - File unique ID.\n     * @param {string[]} params.queries - Array of query strings generated using the Query class provided by the SDK. [Learn more about queries](https://appwrite.io/docs/queries). Maximum of 100 queries are allowed, each 4096 characters long. You may filter on the following attributes: expire\n     * @param {boolean} params.total - When set to false, the total count returned will be 0 and will not be calculated.\n     * @throws {AppwriteException}\n     * @returns {Promise<Models.ResourceTokenList>}\n     */\n    list(params: {\n        bucketId: string;\n        fileId: string;\n        queries?: string[];\n        total?: boolean;\n    }): Promise<Models.ResourceTokenList>;\n    /**\n     * List all the tokens created for a specific file or bucket. You can use the query params to filter your results.\n     *\n     * @param {string} bucketId - Storage bucket unique ID. You can create a new storage bucket using the Storage service [server integration](https://appwrite.io/docs/server/storage#createBucket).\n     * @param {string} fileId - File unique ID.\n     * @param {string[]} queries - Array of query strings generated using the Query class provided by the SDK. [Learn more about queries](https://appwrite.io/docs/queries). Maximum of 100 queries are allowed, each 4096 characters long. You may filter on the following attributes: expire\n     * @param {boolean} total - When set to false, the total count returned will be 0 and will not be calculated.\n     * @throws {AppwriteException}\n     * @returns {Promise<Models.ResourceTokenList>}\n     * @deprecated Use the object parameter style method for a better developer experience.\n     */\n    list(\n        bucketId: string,\n        fileId: string,\n        queries?: string[],\n        total?: boolean,\n    ): Promise<Models.ResourceTokenList>;\n    list(\n        paramsOrFirst:\n            | {\n                  bucketId: string;\n                  fileId: string;\n                  queries?: string[];\n                  total?: boolean;\n              }\n            | string,\n        ...rest: [string?, string[]?, boolean?]\n    ): Promise<Models.ResourceTokenList> {\n        let params: {\n            bucketId: string;\n            fileId: string;\n            queries?: string[];\n            total?: boolean;\n        };\n\n        if (\n            paramsOrFirst &&\n            typeof paramsOrFirst === 'object' &&\n            !Array.isArray(paramsOrFirst)\n        ) {\n            params = (paramsOrFirst || {}) as {\n                bucketId: string;\n                fileId: string;\n                queries?: string[];\n                total?: boolean;\n            };\n        } else {\n            params = {\n                bucketId: paramsOrFirst as string,\n                fileId: rest[0] as string,\n                queries: rest[1] as string[],\n                total: rest[2] as boolean,\n            };\n        }\n\n        const bucketId = params.bucketId;\n        const fileId = params.fileId;\n        const queries = params.queries;\n        const total = params.total;\n        if (typeof bucketId === 'undefined') {\n            throw new AppwriteException(\n                'Missing required parameter: \"bucketId\"',\n            );\n        }\n        if (typeof fileId === 'undefined') {\n            throw new AppwriteException('Missing required parameter: \"fileId\"');\n        }\n        const apiPath = '/tokens/buckets/{bucketId}/files/{fileId}'\n            .replace('{bucketId}', encodeURIComponent(String(bucketId)))\n            .replace('{fileId}', encodeURIComponent(String(fileId)));\n        const apiPayload: Payload = {};\n        if (typeof queries !== 'undefined') {\n            apiPayload['queries'] = queries;\n        }\n        if (typeof total !== 'undefined') {\n            apiPayload['total'] = total;\n        }\n        const uri = new URL(this.client.config.endpoint + apiPath);\n\n        const apiHeaders: { [header: string]: string } = {\n            'X-Appwrite-Project': this.client.config.project,\n            accept: 'application/json',\n        };\n\n        return this.client.call('get', uri, apiHeaders, apiPayload);\n    }\n\n    /**\n     * Create a new token. A token is linked to a file. Token can be passed as a request URL search parameter.\n     *\n     * @param {string} params.bucketId - Storage bucket unique ID. You can create a new storage bucket using the Storage service [server integration](https://appwrite.io/docs/server/storage#createBucket).\n     * @param {string} params.fileId - File unique ID.\n     * @param {string} params.expire - Token expiry date\n     * @throws {AppwriteException}\n     * @returns {Promise<Models.ResourceToken>}\n     */\n    createFileToken(params: {\n        bucketId: string;\n        fileId: string;\n        expire?: string;\n    }): Promise<Models.ResourceToken>;\n    /**\n     * Create a new token. A token is linked to a file. Token can be passed as a request URL search parameter.\n     *\n     * @param {string} bucketId - Storage bucket unique ID. You can create a new storage bucket using the Storage service [server integration](https://appwrite.io/docs/server/storage#createBucket).\n     * @param {string} fileId - File unique ID.\n     * @param {string} expire - Token expiry date\n     * @throws {AppwriteException}\n     * @returns {Promise<Models.ResourceToken>}\n     * @deprecated Use the object parameter style method for a better developer experience.\n     */\n    createFileToken(\n        bucketId: string,\n        fileId: string,\n        expire?: string,\n    ): Promise<Models.ResourceToken>;\n    createFileToken(\n        paramsOrFirst:\n            { bucketId: string; fileId: string; expire?: string } | string,\n        ...rest: [string?, string?]\n    ): Promise<Models.ResourceToken> {\n        let params: { bucketId: string; fileId: string; expire?: string };\n\n        if (\n            paramsOrFirst &&\n            typeof paramsOrFirst === 'object' &&\n            !Array.isArray(paramsOrFirst)\n        ) {\n            params = (paramsOrFirst || {}) as {\n                bucketId: string;\n                fileId: string;\n                expire?: string;\n            };\n        } else {\n            params = {\n                bucketId: paramsOrFirst as string,\n                fileId: rest[0] as string,\n                expire: rest[1] as string,\n            };\n        }\n\n        const bucketId = params.bucketId;\n        const fileId = params.fileId;\n        const expire = params.expire;\n        if (typeof bucketId === 'undefined') {\n            throw new AppwriteException(\n                'Missing required parameter: \"bucketId\"',\n            );\n        }\n        if (typeof fileId === 'undefined') {\n            throw new AppwriteException('Missing required parameter: \"fileId\"');\n        }\n        const apiPath = '/tokens/buckets/{bucketId}/files/{fileId}'\n            .replace('{bucketId}', encodeURIComponent(String(bucketId)))\n            .replace('{fileId}', encodeURIComponent(String(fileId)));\n        const apiPayload: Payload = {};\n        if (typeof expire !== 'undefined') {\n            apiPayload['expire'] = expire;\n        }\n        const uri = new URL(this.client.config.endpoint + apiPath);\n\n        const apiHeaders: { [header: string]: string } = {\n            'X-Appwrite-Project': this.client.config.project,\n            'content-type': 'application/json',\n            accept: 'application/json',\n        };\n\n        return this.client.call('post', uri, apiHeaders, apiPayload);\n    }\n\n    /**\n     * Get a token by its unique ID.\n     *\n     * @param {string} params.tokenId - Token ID.\n     * @throws {AppwriteException}\n     * @returns {Promise<Models.ResourceToken>}\n     */\n    get(params: { tokenId: string }): Promise<Models.ResourceToken>;\n    /**\n     * Get a token by its unique ID.\n     *\n     * @param {string} tokenId - Token ID.\n     * @throws {AppwriteException}\n     * @returns {Promise<Models.ResourceToken>}\n     * @deprecated Use the object parameter style method for a better developer experience.\n     */\n    get(tokenId: string): Promise<Models.ResourceToken>;\n    get(\n        paramsOrFirst: { tokenId: string } | string,\n    ): Promise<Models.ResourceToken> {\n        let params: { tokenId: string };\n\n        if (\n            paramsOrFirst &&\n            typeof paramsOrFirst === 'object' &&\n            !Array.isArray(paramsOrFirst)\n        ) {\n            params = (paramsOrFirst || {}) as { tokenId: string };\n        } else {\n            params = {\n                tokenId: paramsOrFirst as string,\n            };\n        }\n\n        const tokenId = params.tokenId;\n        if (typeof tokenId === 'undefined') {\n            throw new AppwriteException(\n                'Missing required parameter: \"tokenId\"',\n            );\n        }\n        const apiPath = '/tokens/{tokenId}'.replace(\n            '{tokenId}',\n            encodeURIComponent(String(tokenId)),\n        );\n        const apiPayload: Payload = {};\n        const uri = new URL(this.client.config.endpoint + apiPath);\n\n        const apiHeaders: { [header: string]: string } = {\n            'X-Appwrite-Project': this.client.config.project,\n            accept: 'application/json',\n        };\n\n        return this.client.call('get', uri, apiHeaders, apiPayload);\n    }\n\n    /**\n     * Update a token by its unique ID. Use this endpoint to update a token's expiry date.\n     *\n     * @param {string} params.tokenId - Token unique ID.\n     * @param {string} params.expire - File token expiry date\n     * @throws {AppwriteException}\n     * @returns {Promise<Models.ResourceToken>}\n     */\n    update(params: {\n        tokenId: string;\n        expire?: string;\n    }): Promise<Models.ResourceToken>;\n    /**\n     * Update a token by its unique ID. Use this endpoint to update a token's expiry date.\n     *\n     * @param {string} tokenId - Token unique ID.\n     * @param {string} expire - File token expiry date\n     * @throws {AppwriteException}\n     * @returns {Promise<Models.ResourceToken>}\n     * @deprecated Use the object parameter style method for a better developer experience.\n     */\n    update(tokenId: string, expire?: string): Promise<Models.ResourceToken>;\n    update(\n        paramsOrFirst: { tokenId: string; expire?: string } | string,\n        ...rest: [string?]\n    ): Promise<Models.ResourceToken> {\n        let params: { tokenId: string; expire?: string };\n\n        if (\n            paramsOrFirst &&\n            typeof paramsOrFirst === 'object' &&\n            !Array.isArray(paramsOrFirst)\n        ) {\n            params = (paramsOrFirst || {}) as {\n                tokenId: string;\n                expire?: string;\n            };\n        } else {\n            params = {\n                tokenId: paramsOrFirst as string,\n                expire: rest[0] as string,\n            };\n        }\n\n        const tokenId = params.tokenId;\n        const expire = params.expire;\n        if (typeof tokenId === 'undefined') {\n            throw new AppwriteException(\n                'Missing required parameter: \"tokenId\"',\n            );\n        }\n        const apiPath = '/tokens/{tokenId}'.replace(\n            '{tokenId}',\n            encodeURIComponent(String(tokenId)),\n        );\n        const apiPayload: Payload = {};\n        if (typeof expire !== 'undefined') {\n            apiPayload['expire'] = expire;\n        }\n        const uri = new URL(this.client.config.endpoint + apiPath);\n\n        const apiHeaders: { [header: string]: string } = {\n            'X-Appwrite-Project': this.client.config.project,\n            'content-type': 'application/json',\n            accept: 'application/json',\n        };\n\n        return this.client.call('patch', uri, apiHeaders, apiPayload);\n    }\n\n    /**\n     * Delete a token by its unique ID.\n     *\n     * @param {string} params.tokenId - Token ID.\n     * @throws {AppwriteException}\n     * @returns {Promise<{}>}\n     */\n    delete(params: { tokenId: string }): Promise<{}>;\n    /**\n     * Delete a token by its unique ID.\n     *\n     * @param {string} tokenId - Token ID.\n     * @throws {AppwriteException}\n     * @returns {Promise<{}>}\n     * @deprecated Use the object parameter style method for a better developer experience.\n     */\n    delete(tokenId: string): Promise<{}>;\n    delete(paramsOrFirst: { tokenId: string } | string): Promise<{}> {\n        let params: { tokenId: string };\n\n        if (\n            paramsOrFirst &&\n            typeof paramsOrFirst === 'object' &&\n            !Array.isArray(paramsOrFirst)\n        ) {\n            params = (paramsOrFirst || {}) as { tokenId: string };\n        } else {\n            params = {\n                tokenId: paramsOrFirst as string,\n            };\n        }\n\n        const tokenId = params.tokenId;\n        if (typeof tokenId === 'undefined') {\n            throw new AppwriteException(\n                'Missing required parameter: \"tokenId\"',\n            );\n        }\n        const apiPath = '/tokens/{tokenId}'.replace(\n            '{tokenId}',\n            encodeURIComponent(String(tokenId)),\n        );\n        const apiPayload: Payload = {};\n        const uri = new URL(this.client.config.endpoint + apiPath);\n\n        const apiHeaders: { [header: string]: string } = {\n            'X-Appwrite-Project': this.client.config.project,\n            'content-type': 'application/json',\n        };\n\n        return this.client.call('delete', uri, apiHeaders, apiPayload);\n    }\n}\n"]}