import * as z from "zod/v3";
import { Result as SafeParseResult } from "../../types/fp.js";
import { SDKValidationError } from "../errors/sdkvalidationerror.js";
import { WorkspaceUploadRequestAssignment } from "./workspaceuploadrequestassignment.js";
import { WorkspaceUploadRequestDocument } from "./workspaceuploadrequestdocument.js";
import { WorkspaceUploadRequestOwner } from "./workspaceuploadrequestowner.js";
import { WorkspaceUploadRequestStatus } from "./workspaceuploadrequeststatus.js";
export type WorkspaceUploadRequest = {
    /**
     * The ID of the upload request
     */
    uploadRequestId: string;
    /**
     * The ID of the workspace
     */
    workspaceId: string;
    /**
     * The name of the upload request
     */
    name: string | null;
    /**
     * The description of the upload request
     */
    description?: string | null | undefined;
    uploadRequestOwner: WorkspaceUploadRequestOwner;
    /**
     * Enum representing the status of a workspace upload request
     */
    status: WorkspaceUploadRequestStatus;
    /**
     * List of documents associated with the upload request
     */
    documents: Array<WorkspaceUploadRequestDocument> | null;
    /**
     * List of user assignments for the upload request
     */
    assignments: Array<WorkspaceUploadRequestAssignment> | null;
    /**
     * The date the upload request was created
     */
    createdDate: Date | null;
    /**
     * The date the upload request was last updated
     */
    updatedDate: Date | null;
    /**
     * The due date for the upload request
     */
    dueDate?: Date | null | undefined;
    /**
     * The date the upload request was sent
     */
    sentDate?: Date | null | undefined;
    /**
     * The date the upload request was completed
     */
    completedDate?: Date | null | undefined;
    /**
     * Whether the current user can view the upload request
     */
    canView: boolean;
    /**
     * Whether the current user can edit the upload request
     */
    canEdit: boolean;
    /**
     * Whether the current user can delete the upload request
     */
    canDelete: boolean;
};
/** @internal */
export declare const WorkspaceUploadRequest$inboundSchema: z.ZodType<WorkspaceUploadRequest, z.ZodTypeDef, unknown>;
export declare function workspaceUploadRequestFromJSON(jsonString: string): SafeParseResult<WorkspaceUploadRequest, SDKValidationError>;
//# sourceMappingURL=workspaceuploadrequest.d.ts.map