import { APIResource } from "../../core/resource.mjs"; import * as FoldersAPI from "./folders.mjs"; import * as MaterialsAPI from "./materials/materials.mjs"; import { APIPromise } from "../../core/api-promise.mjs"; import { RequestOptions } from "../../internal/request-options.mjs"; export declare class Folders extends APIResource { /** * Create a new folder * * @example * ```ts * const folder = await client.v1.folders.create({ * name: 'name', * }); * ``` */ create(body: FolderCreateParams, options?: RequestOptions): APIPromise; /** * Get folder ID by folder name * * @example * ```ts * const response = await client.v1.folders.getByName('name'); * ``` */ getByName(name: string, query?: FolderGetByNameParams | null | undefined, options?: RequestOptions): APIPromise; /** * Get folder by ID * * @example * ```ts * const folder = await client.v1.folders.retrieve('id'); * ``` */ retrieve(id: string, options?: RequestOptions): APIPromise; /** * Update folder * * @example * ```ts * const folder = await client.v1.folders.update('id'); * ``` */ update(id: string, body: FolderUpdateParams, options?: RequestOptions): APIPromise; /** * Get all folders * * @example * ```ts * const folders = await client.v1.folders.list(); * ``` */ list(query?: FolderListParams | null | undefined, options?: RequestOptions): APIPromise; /** * Delete folder * * @example * ```ts * await client.v1.folders.delete('id'); * ``` */ delete(id: string, options?: RequestOptions): APIPromise; /** * Get folder tree structure * * @example * ```ts * const response = await client.v1.folders.getTree(); * ``` */ getTree(options?: RequestOptions): APIPromise; /** * Get all materials in folder * * @example * ```ts * const response = await client.v1.folders.listMaterials( * 'id', * ); * ``` */ listMaterials(id: string, query?: FolderListMaterialsParams | null | undefined, options?: RequestOptions): APIPromise; /** * Move folder to new parent * * @example * ```ts * const response = await client.v1.folders.move('id', { * parentFolderId: 'parentFolderId', * }); * ``` */ move(id: string, body: FolderMoveParams, options?: RequestOptions): APIPromise; } export interface FolderMetadata { /** * Folder color */ color?: string; /** * Folder icon */ icon?: string; /** * Last activity date */ lastActivity?: string; /** * Number of materials in folder */ materialCount?: number; /** * Total size of materials in folder */ totalSize?: number; } export interface FolderCreateResponse { /** * Folder ID */ _id: string; /** * Creation date */ createdAt: string; /** * Folder name */ name: string; /** * Organization ID */ organizationId: string; /** * Folder status */ status: 'active' | 'deleted'; /** * Last update date */ updatedAt: string; /** * Folder description */ description?: string; /** * Folder metadata */ metadata?: FolderMetadata; /** * Parent folder ID */ parentFolderId?: string | null; } /** * Response for getting folder ID by name */ export interface FolderGetByNameResponse { /** * Folder ID */ folderId: string; } export interface FolderRetrieveResponse { /** * Folder ID */ _id: unknown; /** * Total number of materials */ materialCount: number; /** * Folder name */ name: string; /** * Organization ID */ organizationId: string; /** * Folder status */ status: 'active' | 'deleted'; /** * Subfolders */ subfolders: Array; /** * Creation date */ createdAt?: unknown; /** * Folder description */ description?: string; /** * Folder metadata */ metadata?: FolderMetadata; /** * Parent folder ID */ parentFolderId?: string | null; /** * Last update date */ updatedAt?: unknown; } export interface FolderUpdateResponse { /** * Folder ID */ _id: string; /** * Creation date */ createdAt: string; /** * Folder name */ name: string; /** * Organization ID */ organizationId: string; /** * Folder status */ status: 'active' | 'deleted'; /** * Last update date */ updatedAt: string; /** * Folder description */ description?: string; /** * Folder metadata */ metadata?: FolderMetadata; /** * Parent folder ID */ parentFolderId?: string | null; } export type FolderListResponse = Array; export declare namespace FolderListResponse { interface FolderListResponseItem { /** * Folder ID */ _id: string; /** * Creation date */ createdAt: string; /** * Folder name */ name: string; /** * Organization ID */ organizationId: string; /** * Folder status */ status: 'active' | 'deleted'; /** * Last update date */ updatedAt: string; /** * Folder description */ description?: string; /** * Folder metadata */ metadata?: FoldersAPI.FolderMetadata; /** * Parent folder ID */ parentFolderId?: string | null; } } export type FolderGetTreeResponse = Array; export declare namespace FolderGetTreeResponse { interface FolderGetTreeResponseItem { /** * Folder ID */ _id: unknown; /** * Folder name */ name: string; /** * Organization ID */ organizationId: string; /** * Folder status */ status: 'active' | 'deleted'; /** * Nested subfolders */ subfolders: Array; /** * Creation date */ createdAt?: unknown; /** * Folder description */ description?: string; /** * Folder metadata */ metadata?: FoldersAPI.FolderMetadata; /** * Parent folder ID */ parentFolderId?: string | null; /** * Last update date */ updatedAt?: unknown; } } export interface FolderListMaterialsResponse { materials?: Array; page?: number; totalCount?: number; totalPages?: number; } export interface FolderMoveResponse { /** * Folder ID */ _id: string; /** * Creation date */ createdAt: string; /** * Folder name */ name: string; /** * Organization ID */ organizationId: string; /** * Folder status */ status: 'active' | 'deleted'; /** * Last update date */ updatedAt: string; /** * Folder description */ description?: string; /** * Folder metadata */ metadata?: FolderMetadata; /** * Parent folder ID */ parentFolderId?: string | null; } export interface FolderCreateParams { /** * Folder name */ name: string; /** * Folder description */ description?: string; /** * Additional metadata */ metadata?: unknown; /** * Parent folder ID */ parentFolderId?: string; } export interface FolderGetByNameParams { /** * Parent folder ID for accurate matching (optional) */ parentFolderId?: string; } export interface FolderUpdateParams { /** * New folder description */ description?: string; /** * Updated metadata */ metadata?: unknown; /** * New folder name */ name?: string; /** * New parent folder ID */ parentFolderId?: string; } export interface FolderListParams { /** * Filter by parent folder */ parentFolderId?: string; } export interface FolderListMaterialsParams { /** * Number of items per page (default: 20, max: 200) */ limit?: string; /** * Page number (default: 1) */ page?: string; /** * Search materials by name */ search?: string; } export interface FolderMoveParams { /** * New parent folder ID or null for root level */ parentFolderId: string | null; } export declare namespace Folders { export { type FolderMetadata as FolderMetadata, type FolderCreateResponse as FolderCreateResponse, type FolderGetByNameResponse as FolderGetByNameResponse, type FolderRetrieveResponse as FolderRetrieveResponse, type FolderUpdateResponse as FolderUpdateResponse, type FolderListResponse as FolderListResponse, type FolderGetTreeResponse as FolderGetTreeResponse, type FolderListMaterialsResponse as FolderListMaterialsResponse, type FolderMoveResponse as FolderMoveResponse, type FolderCreateParams as FolderCreateParams, type FolderGetByNameParams as FolderGetByNameParams, type FolderUpdateParams as FolderUpdateParams, type FolderListParams as FolderListParams, type FolderListMaterialsParams as FolderListMaterialsParams, type FolderMoveParams as FolderMoveParams, }; } //# sourceMappingURL=folders.d.mts.map