Variable defaultConst

default: VersionedModelConstructor<
    InferData<
        {
            completed: BooleanType<false>;
            creator: ObjectType<string, false>;
            description: ObjectType<string, false>;
            id: StringType<false>;
            license: StringType<false>;
            mimeType: StringType<false>;
            name: StringType<false>;
            source: ObjectType<string, false>;
            uploadedBy: StringType<false>;
            uploadedOn: DateType<false>;
            userCanDelete: VirtualType<unknown, false>;
            userIsCreator: VirtualType<unknown, false>;
        },
    >,
    InferVirtual<
        {
            completed: BooleanType<false>;
            creator: ObjectType<string, false>;
            description: ObjectType<string, false>;
            id: StringType<false>;
            license: StringType<false>;
            mimeType: StringType<false>;
            name: StringType<false>;
            source: ObjectType<string, false>;
            uploadedBy: StringType<false>;
            uploadedOn: DateType<false>;
            userCanDelete: VirtualType<unknown, false>;
            userIsCreator: VirtualType<unknown, false>;
        },
    >,
    InferData<
        {
            completed: BooleanType<false>;
            creator: ObjectType<string, false>;
            description: ObjectType<string, false>;
            id: StringType<false>;
            license: StringType<false>;
            mimeType: StringType<false>;
            name: StringType<false>;
            source: ObjectType<string, false>;
            uploadedBy: StringType<false>;
            uploadedOn: DateType<false>;
            userCanDelete: VirtualType<unknown, false>;
            userIsCreator: VirtualType<unknown, false>;
        },
    > & InferVirtual<
        {
            completed: BooleanType<false>;
            creator: ObjectType<string, false>;
            description: ObjectType<string, false>;
            id: StringType<false>;
            license: StringType<false>;
            mimeType: StringType<false>;
            name: StringType<false>;
            source: ObjectType<string, false>;
            uploadedBy: StringType<false>;
            uploadedOn: DateType<false>;
            userCanDelete: VirtualType<unknown, false>;
            userIsCreator: VirtualType<unknown, false>;
        },
    > & ModelInstanceCore<
        InferData<
            {
                completed: BooleanType<false>;
                creator: ObjectType<string, false>;
                description: ObjectType<string, false>;
                id: StringType<false>;
                license: StringType<false>;
                mimeType: StringType<false>;
                name: StringType<false>;
                source: ObjectType<string, false>;
                uploadedBy: StringType<false>;
                uploadedOn: DateType<false>;
                userCanDelete: VirtualType<unknown, false>;
                userIsCreator: VirtualType<unknown, false>;
            },
        >,
        InferVirtual<
            {
                completed: BooleanType<false>;
                creator: ObjectType<string, false>;
                description: ObjectType<string, false>;
                id: StringType<false>;
                license: StringType<false>;
                mimeType: StringType<false>;
                name: StringType<false>;
                source: ObjectType<string, false>;
                uploadedBy: StringType<false>;
                uploadedOn: DateType<false>;
                userCanDelete: VirtualType<unknown, false>;
                userIsCreator: VirtualType<unknown, false>;
            },
        >,
    > & RevisionFieldMap & {
        deleteAllRevisions<
            TThis extends
                VersionedModelInstance<
                    InferData<
                        {
                            completed: BooleanType<false>;
                            creator: ObjectType<string, false>;
                            description: ObjectType<string, false>;
                            id: StringType<false>;
                            license: StringType<false>;
                            mimeType: StringType<false>;
                            name: StringType<false>;
                            source: ObjectType<string, false>;
                            uploadedBy: StringType<false>;
                            uploadedOn: DateType<false>;
                            userCanDelete: VirtualType<unknown, false>;
                            userIsCreator: VirtualType<unknown, false>;
                        },
                    >,
                    InferVirtual<
                        {
                            completed: BooleanType<false>;
                            creator: ObjectType<string, false>;
                            description: ObjectType<string, false>;
                            id: StringType<false>;
                            license: StringType<false>;
                            mimeType: StringType<false>;
                            name: StringType<false>;
                            source: ObjectType<string, false>;
                            uploadedBy: StringType<false>;
                            uploadedOn: DateType<false>;
                            userCanDelete: VirtualType<unknown, false>;
                            userIsCreator: VirtualType<unknown, false>;
                        },
                    >,
                > = VersionedModelInstance<
                InferData<
                    {
                        completed: BooleanType<false>;
                        creator: ObjectType<string, false>;
                        description: ObjectType<string, false>;
                        id: StringType<false>;
                        license: StringType<false>;
                        mimeType: StringType<false>;
                        name: StringType<false>;
                        source: ObjectType<string, false>;
                        uploadedBy: StringType<false>;
                        uploadedOn: DateType<false>;
                        userCanDelete: VirtualType<unknown, false>;
                        userIsCreator: VirtualType<unknown, false>;
                    },
                >,
                InferVirtual<
                    {
                        completed: BooleanType<false>;
                        creator: ObjectType<string, false>;
                        description: ObjectType<string, false>;
                        id: StringType<false>;
                        license: StringType<false>;
                        mimeType: StringType<false>;
                        name: StringType<false>;
                        source: ObjectType<string, false>;
                        uploadedBy: StringType<false>;
                        uploadedOn: DateType<false>;
                        userCanDelete: VirtualType<unknown, false>;
                        userIsCreator: VirtualType<unknown, false>;
                    },
                >,
            >,
        >(
            this: TThis,
            user?: RevisionActor,
            options?: RevisionMetadata,
        ): Promise<TThis>;
        newRevision<
            TThis extends
                VersionedModelInstance<
                    InferData<
                        {
                            completed: BooleanType<false>;
                            creator: ObjectType<string, false>;
                            description: ObjectType<string, false>;
                            id: StringType<false>;
                            license: StringType<false>;
                            mimeType: StringType<false>;
                            name: StringType<false>;
                            source: ObjectType<string, false>;
                            uploadedBy: StringType<false>;
                            uploadedOn: DateType<false>;
                            userCanDelete: VirtualType<unknown, false>;
                            userIsCreator: VirtualType<unknown, false>;
                        },
                    >,
                    InferVirtual<
                        {
                            completed: BooleanType<false>;
                            creator: ObjectType<string, false>;
                            description: ObjectType<string, false>;
                            id: StringType<false>;
                            license: StringType<false>;
                            mimeType: StringType<false>;
                            name: StringType<false>;
                            source: ObjectType<string, false>;
                            uploadedBy: StringType<false>;
                            uploadedOn: DateType<false>;
                            userCanDelete: VirtualType<unknown, false>;
                            userIsCreator: VirtualType<unknown, false>;
                        },
                    >,
                > = VersionedModelInstance<
                InferData<
                    {
                        completed: BooleanType<false>;
                        creator: ObjectType<string, false>;
                        description: ObjectType<string, false>;
                        id: StringType<false>;
                        license: StringType<false>;
                        mimeType: StringType<false>;
                        name: StringType<false>;
                        source: ObjectType<string, false>;
                        uploadedBy: StringType<false>;
                        uploadedOn: DateType<false>;
                        userCanDelete: VirtualType<unknown, false>;
                        userIsCreator: VirtualType<unknown, false>;
                    },
                >,
                InferVirtual<
                    {
                        completed: BooleanType<false>;
                        creator: ObjectType<string, false>;
                        description: ObjectType<string, false>;
                        id: StringType<false>;
                        license: StringType<false>;
                        mimeType: StringType<false>;
                        name: StringType<false>;
                        source: ObjectType<string, false>;
                        uploadedBy: StringType<false>;
                        uploadedOn: DateType<false>;
                        userCanDelete: VirtualType<unknown, false>;
                        userIsCreator: VirtualType<unknown, false>;
                    },
                >,
            >,
        >(
            this: TThis,
            user: RevisionActor,
            options?: RevisionMetadata,
        ): Promise<TThis>;
    } & { populateUserInfo(user: UserAccessContext): void },
    "things" | "uploader",
> & {
    getFileFeed(
        options?: FileFeedOptions,
    ): Promise<
        FileFeedResult<
            InferData<
                {
                    completed: BooleanType<false>;
                    creator: ObjectType<string, false>;
                    description: ObjectType<string, false>;
                    id: StringType<false>;
                    license: StringType<false>;
                    mimeType: StringType<false>;
                    name: StringType<false>;
                    source: ObjectType<string, false>;
                    uploadedBy: StringType<false>;
                    uploadedOn: DateType<false>;
                    userCanDelete: VirtualType<unknown, false>;
                    userIsCreator: VirtualType<unknown, false>;
                },
            > & InferVirtual<
                {
                    completed: BooleanType<false>;
                    creator: ObjectType<string, false>;
                    description: ObjectType<string, false>;
                    id: StringType<false>;
                    license: StringType<false>;
                    mimeType: StringType<false>;
                    name: StringType<false>;
                    source: ObjectType<string, false>;
                    uploadedBy: StringType<false>;
                    uploadedOn: DateType<false>;
                    userCanDelete: VirtualType<unknown, false>;
                    userIsCreator: VirtualType<unknown, false>;
                },
            > & ModelInstanceCore<
                InferData<
                    {
                        completed: BooleanType<false>;
                        creator: ObjectType<string, false>;
                        description: ObjectType<string, false>;
                        id: StringType<false>;
                        license: StringType<false>;
                        mimeType: StringType<false>;
                        name: StringType<false>;
                        source: ObjectType<string, false>;
                        uploadedBy: StringType<false>;
                        uploadedOn: DateType<false>;
                        userCanDelete: VirtualType<unknown, false>;
                        userIsCreator: VirtualType<unknown, false>;
                    },
                >,
                InferVirtual<
                    {
                        completed: BooleanType<false>;
                        creator: ObjectType<string, false>;
                        description: ObjectType<string, false>;
                        id: StringType<false>;
                        license: StringType<false>;
                        mimeType: StringType<false>;
                        name: StringType<false>;
                        source: ObjectType<string, false>;
                        uploadedBy: StringType<false>;
                        uploadedOn: DateType<false>;
                        userCanDelete: VirtualType<unknown, false>;
                        userIsCreator: VirtualType<unknown, false>;
                    },
                >,
            > & RevisionFieldMap & {
                deleteAllRevisions<
                    TThis extends
                        VersionedModelInstance<
                            InferData<
                                {
                                    completed: BooleanType<false>;
                                    creator: ObjectType<string, false>;
                                    description: ObjectType<string, false>;
                                    id: StringType<false>;
                                    license: StringType<false>;
                                    mimeType: StringType<false>;
                                    name: StringType<false>;
                                    source: ObjectType<string, false>;
                                    uploadedBy: StringType<false>;
                                    uploadedOn: DateType<false>;
                                    userCanDelete: VirtualType<unknown, false>;
                                    userIsCreator: VirtualType<unknown, false>;
                                },
                            >,
                            InferVirtual<
                                {
                                    completed: BooleanType<false>;
                                    creator: ObjectType<string, false>;
                                    description: ObjectType<string, false>;
                                    id: StringType<false>;
                                    license: StringType<false>;
                                    mimeType: StringType<false>;
                                    name: StringType<false>;
                                    source: ObjectType<string, false>;
                                    uploadedBy: StringType<false>;
                                    uploadedOn: DateType<false>;
                                    userCanDelete: VirtualType<unknown, false>;
                                    userIsCreator: VirtualType<unknown, false>;
                                },
                            >,
                        > = VersionedModelInstance<
                        InferData<
                            {
                                completed: BooleanType<false>;
                                creator: ObjectType<string, false>;
                                description: ObjectType<string, false>;
                                id: StringType<false>;
                                license: StringType<false>;
                                mimeType: StringType<false>;
                                name: StringType<false>;
                                source: ObjectType<string, false>;
                                uploadedBy: StringType<false>;
                                uploadedOn: DateType<false>;
                                userCanDelete: VirtualType<unknown, false>;
                                userIsCreator: VirtualType<unknown, false>;
                            },
                        >,
                        InferVirtual<
                            {
                                completed: BooleanType<false>;
                                creator: ObjectType<string, false>;
                                description: ObjectType<string, false>;
                                id: StringType<false>;
                                license: StringType<false>;
                                mimeType: StringType<false>;
                                name: StringType<false>;
                                source: ObjectType<string, false>;
                                uploadedBy: StringType<false>;
                                uploadedOn: DateType<false>;
                                userCanDelete: VirtualType<unknown, false>;
                                userIsCreator: VirtualType<unknown, false>;
                            },
                        >,
                    >,
                >(
                    this: TThis,
                    user?: RevisionActor,
                    options?: RevisionMetadata,
                ): Promise<TThis>;
                newRevision<
                    TThis extends
                        VersionedModelInstance<
                            InferData<
                                {
                                    completed: BooleanType<false>;
                                    creator: ObjectType<string, false>;
                                    description: ObjectType<string, false>;
                                    id: StringType<false>;
                                    license: StringType<false>;
                                    mimeType: StringType<false>;
                                    name: StringType<false>;
                                    source: ObjectType<string, false>;
                                    uploadedBy: StringType<false>;
                                    uploadedOn: DateType<false>;
                                    userCanDelete: VirtualType<unknown, false>;
                                    userIsCreator: VirtualType<unknown, false>;
                                },
                            >,
                            InferVirtual<
                                {
                                    completed: BooleanType<false>;
                                    creator: ObjectType<string, false>;
                                    description: ObjectType<string, false>;
                                    id: StringType<false>;
                                    license: StringType<false>;
                                    mimeType: StringType<false>;
                                    name: StringType<false>;
                                    source: ObjectType<string, false>;
                                    uploadedBy: StringType<false>;
                                    uploadedOn: DateType<false>;
                                    userCanDelete: VirtualType<unknown, false>;
                                    userIsCreator: VirtualType<unknown, false>;
                                },
                            >,
                        > = VersionedModelInstance<
                        InferData<
                            {
                                completed: BooleanType<false>;
                                creator: ObjectType<string, false>;
                                description: ObjectType<string, false>;
                                id: StringType<false>;
                                license: StringType<false>;
                                mimeType: StringType<false>;
                                name: StringType<false>;
                                source: ObjectType<string, false>;
                                uploadedBy: StringType<false>;
                                uploadedOn: DateType<false>;
                                userCanDelete: VirtualType<unknown, false>;
                                userIsCreator: VirtualType<unknown, false>;
                            },
                        >,
                        InferVirtual<
                            {
                                completed: BooleanType<false>;
                                creator: ObjectType<string, false>;
                                description: ObjectType<string, false>;
                                id: StringType<false>;
                                license: StringType<false>;
                                mimeType: StringType<false>;
                                name: StringType<false>;
                                source: ObjectType<string, false>;
                                uploadedBy: StringType<false>;
                                uploadedOn: DateType<false>;
                                userCanDelete: VirtualType<unknown, false>;
                                userIsCreator: VirtualType<unknown, false>;
                            },
                        >,
                    >,
                >(
                    this: TThis,
                    user: RevisionActor,
                    options?: RevisionMetadata,
                ): Promise<TThis>;
            } & { populateUserInfo(user: UserAccessContext): void } & FileRelations,
        >,
    >;
    getStashedUpload(
        userID: string,
        name: string,
    ): Promise<
        InferData<
            {
                completed: BooleanType<false>;
                creator: ObjectType<string, false>;
                description: ObjectType<string, false>;
                id: StringType<false>;
                license: StringType<false>;
                mimeType: StringType<false>;
                name: StringType<false>;
                source: ObjectType<string, false>;
                uploadedBy: StringType<false>;
                uploadedOn: DateType<false>;
                userCanDelete: VirtualType<unknown, false>;
                userIsCreator: VirtualType<unknown, false>;
            },
        > & InferVirtual<
            {
                completed: BooleanType<false>;
                creator: ObjectType<string, false>;
                description: ObjectType<string, false>;
                id: StringType<false>;
                license: StringType<false>;
                mimeType: StringType<false>;
                name: StringType<false>;
                source: ObjectType<string, false>;
                uploadedBy: StringType<false>;
                uploadedOn: DateType<false>;
                userCanDelete: VirtualType<unknown, false>;
                userIsCreator: VirtualType<unknown, false>;
            },
        > & ModelInstanceCore<
            InferData<
                {
                    completed: BooleanType<false>;
                    creator: ObjectType<string, false>;
                    description: ObjectType<string, false>;
                    id: StringType<false>;
                    license: StringType<false>;
                    mimeType: StringType<false>;
                    name: StringType<false>;
                    source: ObjectType<string, false>;
                    uploadedBy: StringType<false>;
                    uploadedOn: DateType<false>;
                    userCanDelete: VirtualType<unknown, false>;
                    userIsCreator: VirtualType<unknown, false>;
                },
            >,
            InferVirtual<
                {
                    completed: BooleanType<false>;
                    creator: ObjectType<string, false>;
                    description: ObjectType<string, false>;
                    id: StringType<false>;
                    license: StringType<false>;
                    mimeType: StringType<false>;
                    name: StringType<false>;
                    source: ObjectType<string, false>;
                    uploadedBy: StringType<false>;
                    uploadedOn: DateType<false>;
                    userCanDelete: VirtualType<unknown, false>;
                    userIsCreator: VirtualType<unknown, false>;
                },
            >,
        > & RevisionFieldMap & {
            deleteAllRevisions<
                TThis extends
                    VersionedModelInstance<
                        InferData<
                            {
                                completed: BooleanType<false>;
                                creator: ObjectType<string, false>;
                                description: ObjectType<string, false>;
                                id: StringType<false>;
                                license: StringType<false>;
                                mimeType: StringType<false>;
                                name: StringType<false>;
                                source: ObjectType<string, false>;
                                uploadedBy: StringType<false>;
                                uploadedOn: DateType<false>;
                                userCanDelete: VirtualType<unknown, false>;
                                userIsCreator: VirtualType<unknown, false>;
                            },
                        >,
                        InferVirtual<
                            {
                                completed: BooleanType<false>;
                                creator: ObjectType<string, false>;
                                description: ObjectType<string, false>;
                                id: StringType<false>;
                                license: StringType<false>;
                                mimeType: StringType<false>;
                                name: StringType<false>;
                                source: ObjectType<string, false>;
                                uploadedBy: StringType<false>;
                                uploadedOn: DateType<false>;
                                userCanDelete: VirtualType<unknown, false>;
                                userIsCreator: VirtualType<unknown, false>;
                            },
                        >,
                    > = VersionedModelInstance<
                    InferData<
                        {
                            completed: BooleanType<false>;
                            creator: ObjectType<string, false>;
                            description: ObjectType<string, false>;
                            id: StringType<false>;
                            license: StringType<false>;
                            mimeType: StringType<false>;
                            name: StringType<false>;
                            source: ObjectType<string, false>;
                            uploadedBy: StringType<false>;
                            uploadedOn: DateType<false>;
                            userCanDelete: VirtualType<unknown, false>;
                            userIsCreator: VirtualType<unknown, false>;
                        },
                    >,
                    InferVirtual<
                        {
                            completed: BooleanType<false>;
                            creator: ObjectType<string, false>;
                            description: ObjectType<string, false>;
                            id: StringType<false>;
                            license: StringType<false>;
                            mimeType: StringType<false>;
                            name: StringType<false>;
                            source: ObjectType<string, false>;
                            uploadedBy: StringType<false>;
                            uploadedOn: DateType<false>;
                            userCanDelete: VirtualType<unknown, false>;
                            userIsCreator: VirtualType<unknown, false>;
                        },
                    >,
                >,
            >(
                this: TThis,
                user?: RevisionActor,
                options?: RevisionMetadata,
            ): Promise<TThis>;
            newRevision<
                TThis extends
                    VersionedModelInstance<
                        InferData<
                            {
                                completed: BooleanType<false>;
                                creator: ObjectType<string, false>;
                                description: ObjectType<string, false>;
                                id: StringType<false>;
                                license: StringType<false>;
                                mimeType: StringType<false>;
                                name: StringType<false>;
                                source: ObjectType<string, false>;
                                uploadedBy: StringType<false>;
                                uploadedOn: DateType<false>;
                                userCanDelete: VirtualType<unknown, false>;
                                userIsCreator: VirtualType<unknown, false>;
                            },
                        >,
                        InferVirtual<
                            {
                                completed: BooleanType<false>;
                                creator: ObjectType<string, false>;
                                description: ObjectType<string, false>;
                                id: StringType<false>;
                                license: StringType<false>;
                                mimeType: StringType<false>;
                                name: StringType<false>;
                                source: ObjectType<string, false>;
                                uploadedBy: StringType<false>;
                                uploadedOn: DateType<false>;
                                userCanDelete: VirtualType<unknown, false>;
                                userIsCreator: VirtualType<unknown, false>;
                            },
                        >,
                    > = VersionedModelInstance<
                    InferData<
                        {
                            completed: BooleanType<false>;
                            creator: ObjectType<string, false>;
                            description: ObjectType<string, false>;
                            id: StringType<false>;
                            license: StringType<false>;
                            mimeType: StringType<false>;
                            name: StringType<false>;
                            source: ObjectType<string, false>;
                            uploadedBy: StringType<false>;
                            uploadedOn: DateType<false>;
                            userCanDelete: VirtualType<unknown, false>;
                            userIsCreator: VirtualType<unknown, false>;
                        },
                    >,
                    InferVirtual<
                        {
                            completed: BooleanType<false>;
                            creator: ObjectType<string, false>;
                            description: ObjectType<string, false>;
                            id: StringType<false>;
                            license: StringType<false>;
                            mimeType: StringType<false>;
                            name: StringType<false>;
                            source: ObjectType<string, false>;
                            uploadedBy: StringType<false>;
                            uploadedOn: DateType<false>;
                            userCanDelete: VirtualType<unknown, false>;
                            userIsCreator: VirtualType<unknown, false>;
                        },
                    >,
                >,
            >(
                this: TThis,
                user: RevisionActor,
                options?: RevisionMetadata,
            ): Promise<TThis>;
        } & { populateUserInfo(user: UserAccessContext): void } & FileRelations,
    >;
    getValidLicenses(): readonly string[];
} & CreateFromRowStatic<
    MergeManifestMethods<
        {
            camelToSnake: {
                mimeType: "mime_type";
                uploadedBy: "uploaded_by";
                uploadedOn: "uploaded_on";
            };
            hasRevisions: true;
            relations: readonly [
                {
                    cardinality: "one";
                    hasRevisions: false;
                    name: "uploader";
                    sourceKey: "uploaded_by";
                    targetKey: "id";
                    targetTable: "users";
                },
                {
                    cardinality: "many";
                    hasRevisions: true;
                    name: "things";
                    sourceKey: "id";
                    targetKey: "id";
                    targetTable: "things";
                    through: {
                        sourceForeignKey: "file_id";
                        table: "thing_files";
                        targetForeignKey: "thing_id";
                    };
                },
            ];
            schema: {
                completed: BooleanType<false>;
                creator: ObjectType<string, false>;
                description: ObjectType<string, false>;
                id: StringType<false>;
                license: StringType<false>;
                mimeType: StringType<false>;
                name: StringType<false>;
                source: ObjectType<string, false>;
                uploadedBy: StringType<false>;
                uploadedOn: DateType<false>;
                userCanDelete: VirtualType<unknown, false>;
                userIsCreator: VirtualType<unknown, false>;
            };
            tableName: "files";
        },
        {
            getFileFeed(
                options?: FileFeedOptions,
            ): Promise<
                FileFeedResult<
                    InferData<
                        {
                            completed: BooleanType<false>;
                            creator: ObjectType<string, false>;
                            description: ObjectType<string, false>;
                            id: StringType<false>;
                            license: StringType<false>;
                            mimeType: StringType<false>;
                            name: StringType<false>;
                            source: ObjectType<string, false>;
                            uploadedBy: StringType<false>;
                            uploadedOn: DateType<false>;
                            userCanDelete: VirtualType<unknown, false>;
                            userIsCreator: VirtualType<unknown, false>;
                        },
                    > & InferVirtual<
                        {
                            completed: BooleanType<false>;
                            creator: ObjectType<string, false>;
                            description: ObjectType<string, false>;
                            id: StringType<false>;
                            license: StringType<false>;
                            mimeType: StringType<false>;
                            name: StringType<false>;
                            source: ObjectType<string, false>;
                            uploadedBy: StringType<false>;
                            uploadedOn: DateType<false>;
                            userCanDelete: VirtualType<unknown, false>;
                            userIsCreator: VirtualType<unknown, false>;
                        },
                    > & ModelInstanceCore<
                        InferData<
                            {
                                completed: BooleanType<(...)>;
                                creator: ObjectType<(...), (...)>;
                                description: ObjectType<(...), (...)>;
                                id: StringType<(...)>;
                                license: StringType<(...)>;
                                mimeType: StringType<(...)>;
                                name: StringType<(...)>;
                                source: ObjectType<(...), (...)>;
                                uploadedBy: StringType<(...)>;
                                uploadedOn: DateType<(...)>;
                                userCanDelete: VirtualType<(...), (...)>;
                                userIsCreator: VirtualType<(...), (...)>;
                            },
                        >,
                        InferVirtual<
                            {
                                completed: BooleanType<(...)>;
                                creator: ObjectType<(...), (...)>;
                                description: ObjectType<(...), (...)>;
                                id: StringType<(...)>;
                                license: StringType<(...)>;
                                mimeType: StringType<(...)>;
                                name: StringType<(...)>;
                                source: ObjectType<(...), (...)>;
                                uploadedBy: StringType<(...)>;
                                uploadedOn: DateType<(...)>;
                                userCanDelete: VirtualType<(...), (...)>;
                                userIsCreator: VirtualType<(...), (...)>;
                            },
                        >,
                    > & RevisionFieldMap & {
                        deleteAllRevisions<
                            TThis extends
                                VersionedModelInstance<
                                    InferData<
                                        {
                                            completed: ...;
                                            creator: ...;
                                            description: ...;
                                            id: ...;
                                            license: ...;
                                            mimeType: ...;
                                            name: ...;
                                            source: ...;
                                            uploadedBy: ...;
                                            uploadedOn: ...;
                                            userCanDelete: ...;
                                            userIsCreator: ...;
                                        },
                                    >,
                                    InferVirtual<
                                        {
                                            completed: ...;
                                            creator: ...;
                                            description: ...;
                                            id: ...;
                                            license: ...;
                                            mimeType: ...;
                                            name: ...;
                                            source: ...;
                                            uploadedBy: ...;
                                            uploadedOn: ...;
                                            userCanDelete: ...;
                                            userIsCreator: ...;
                                        },
                                    >,
                                > = VersionedModelInstance<
                                InferData<
                                    {
                                        completed: ...;
                                        creator: ...;
                                        description: ...;
                                        id: ...;
                                        license: ...;
                                        mimeType: ...;
                                        name: ...;
                                        source: ...;
                                        uploadedBy: ...;
                                        uploadedOn: ...;
                                        userCanDelete: ...;
                                        userIsCreator: ...;
                                    },
                                >,
                                InferVirtual<
                                    {
                                        completed: ...;
                                        creator: ...;
                                        description: ...;
                                        id: ...;
                                        license: ...;
                                        mimeType: ...;
                                        name: ...;
                                        source: ...;
                                        uploadedBy: ...;
                                        uploadedOn: ...;
                                        userCanDelete: ...;
                                        userIsCreator: ...;
                                    },
                                >,
                            >,
                        >(
                            this: TThis,
                            user?: RevisionActor,
                            options?: RevisionMetadata,
                        ): Promise<TThis>;
                        newRevision<
                            TThis extends
                                VersionedModelInstance<
                                    InferData<
                                        {
                                            completed: ...;
                                            creator: ...;
                                            description: ...;
                                            id: ...;
                                            license: ...;
                                            mimeType: ...;
                                            name: ...;
                                            source: ...;
                                            uploadedBy: ...;
                                            uploadedOn: ...;
                                            userCanDelete: ...;
                                            userIsCreator: ...;
                                        },
                                    >,
                                    InferVirtual<
                                        {
                                            completed: ...;
                                            creator: ...;
                                            description: ...;
                                            id: ...;
                                            license: ...;
                                            mimeType: ...;
                                            name: ...;
                                            source: ...;
                                            uploadedBy: ...;
                                            uploadedOn: ...;
                                            userCanDelete: ...;
                                            userIsCreator: ...;
                                        },
                                    >,
                                > = VersionedModelInstance<
                                InferData<
                                    {
                                        completed: ...;
                                        creator: ...;
                                        description: ...;
                                        id: ...;
                                        license: ...;
                                        mimeType: ...;
                                        name: ...;
                                        source: ...;
                                        uploadedBy: ...;
                                        uploadedOn: ...;
                                        userCanDelete: ...;
                                        userIsCreator: ...;
                                    },
                                >,
                                InferVirtual<
                                    {
                                        completed: ...;
                                        creator: ...;
                                        description: ...;
                                        id: ...;
                                        license: ...;
                                        mimeType: ...;
                                        name: ...;
                                        source: ...;
                                        uploadedBy: ...;
                                        uploadedOn: ...;
                                        userCanDelete: ...;
                                        userIsCreator: ...;
                                    },
                                >,
                            >,
                        >(
                            this: TThis,
                            user: RevisionActor,
                            options?: RevisionMetadata,
                        ): Promise<TThis>;
                    } & { populateUserInfo(user: UserAccessContext): void } & FileRelations,
                >,
            >;
            getStashedUpload(
                userID: string,
                name: string,
            ): Promise<
                InferData<
                    {
                        completed: BooleanType<false>;
                        creator: ObjectType<string, false>;
                        description: ObjectType<string, false>;
                        id: StringType<false>;
                        license: StringType<false>;
                        mimeType: StringType<false>;
                        name: StringType<false>;
                        source: ObjectType<string, false>;
                        uploadedBy: StringType<false>;
                        uploadedOn: DateType<false>;
                        userCanDelete: VirtualType<unknown, false>;
                        userIsCreator: VirtualType<unknown, false>;
                    },
                > & InferVirtual<
                    {
                        completed: BooleanType<false>;
                        creator: ObjectType<string, false>;
                        description: ObjectType<string, false>;
                        id: StringType<false>;
                        license: StringType<false>;
                        mimeType: StringType<false>;
                        name: StringType<false>;
                        source: ObjectType<string, false>;
                        uploadedBy: StringType<false>;
                        uploadedOn: DateType<false>;
                        userCanDelete: VirtualType<unknown, false>;
                        userIsCreator: VirtualType<unknown, false>;
                    },
                > & ModelInstanceCore<
                    InferData<
                        {
                            completed: BooleanType<false>;
                            creator: ObjectType<string, false>;
                            description: ObjectType<string, false>;
                            id: StringType<false>;
                            license: StringType<false>;
                            mimeType: StringType<false>;
                            name: StringType<false>;
                            source: ObjectType<string, false>;
                            uploadedBy: StringType<false>;
                            uploadedOn: DateType<false>;
                            userCanDelete: VirtualType<unknown, false>;
                            userIsCreator: VirtualType<unknown, false>;
                        },
                    >,
                    InferVirtual<
                        {
                            completed: BooleanType<false>;
                            creator: ObjectType<string, false>;
                            description: ObjectType<string, false>;
                            id: StringType<false>;
                            license: StringType<false>;
                            mimeType: StringType<false>;
                            name: StringType<false>;
                            source: ObjectType<string, false>;
                            uploadedBy: StringType<false>;
                            uploadedOn: DateType<false>;
                            userCanDelete: VirtualType<unknown, false>;
                            userIsCreator: VirtualType<unknown, false>;
                        },
                    >,
                > & RevisionFieldMap & {
                    deleteAllRevisions<
                        TThis extends
                            VersionedModelInstance<
                                InferData<
                                    {
                                        completed: BooleanType<(...)>;
                                        creator: ObjectType<(...), (...)>;
                                        description: ObjectType<(...), (...)>;
                                        id: StringType<(...)>;
                                        license: StringType<(...)>;
                                        mimeType: StringType<(...)>;
                                        name: StringType<(...)>;
                                        source: ObjectType<(...), (...)>;
                                        uploadedBy: StringType<(...)>;
                                        uploadedOn: DateType<(...)>;
                                        userCanDelete: VirtualType<(...), (...)>;
                                        userIsCreator: VirtualType<(...), (...)>;
                                    },
                                >,
                                InferVirtual<
                                    {
                                        completed: BooleanType<(...)>;
                                        creator: ObjectType<(...), (...)>;
                                        description: ObjectType<(...), (...)>;
                                        id: StringType<(...)>;
                                        license: StringType<(...)>;
                                        mimeType: StringType<(...)>;
                                        name: StringType<(...)>;
                                        source: ObjectType<(...), (...)>;
                                        uploadedBy: StringType<(...)>;
                                        uploadedOn: DateType<(...)>;
                                        userCanDelete: VirtualType<(...), (...)>;
                                        userIsCreator: VirtualType<(...), (...)>;
                                    },
                                >,
                            > = VersionedModelInstance<
                            InferData<
                                {
                                    completed: BooleanType<(...)>;
                                    creator: ObjectType<(...), (...)>;
                                    description: ObjectType<(...), (...)>;
                                    id: StringType<(...)>;
                                    license: StringType<(...)>;
                                    mimeType: StringType<(...)>;
                                    name: StringType<(...)>;
                                    source: ObjectType<(...), (...)>;
                                    uploadedBy: StringType<(...)>;
                                    uploadedOn: DateType<(...)>;
                                    userCanDelete: VirtualType<(...), (...)>;
                                    userIsCreator: VirtualType<(...), (...)>;
                                },
                            >,
                            InferVirtual<
                                {
                                    completed: BooleanType<(...)>;
                                    creator: ObjectType<(...), (...)>;
                                    description: ObjectType<(...), (...)>;
                                    id: StringType<(...)>;
                                    license: StringType<(...)>;
                                    mimeType: StringType<(...)>;
                                    name: StringType<(...)>;
                                    source: ObjectType<(...), (...)>;
                                    uploadedBy: StringType<(...)>;
                                    uploadedOn: DateType<(...)>;
                                    userCanDelete: VirtualType<(...), (...)>;
                                    userIsCreator: VirtualType<(...), (...)>;
                                },
                            >,
                        >,
                    >(
                        this: TThis,
                        user?: RevisionActor,
                        options?: RevisionMetadata,
                    ): Promise<TThis>;
                    newRevision<
                        TThis extends
                            VersionedModelInstance<
                                InferData<
                                    {
                                        completed: BooleanType<(...)>;
                                        creator: ObjectType<(...), (...)>;
                                        description: ObjectType<(...), (...)>;
                                        id: StringType<(...)>;
                                        license: StringType<(...)>;
                                        mimeType: StringType<(...)>;
                                        name: StringType<(...)>;
                                        source: ObjectType<(...), (...)>;
                                        uploadedBy: StringType<(...)>;
                                        uploadedOn: DateType<(...)>;
                                        userCanDelete: VirtualType<(...), (...)>;
                                        userIsCreator: VirtualType<(...), (...)>;
                                    },
                                >,
                                InferVirtual<
                                    {
                                        completed: BooleanType<(...)>;
                                        creator: ObjectType<(...), (...)>;
                                        description: ObjectType<(...), (...)>;
                                        id: StringType<(...)>;
                                        license: StringType<(...)>;
                                        mimeType: StringType<(...)>;
                                        name: StringType<(...)>;
                                        source: ObjectType<(...), (...)>;
                                        uploadedBy: StringType<(...)>;
                                        uploadedOn: DateType<(...)>;
                                        userCanDelete: VirtualType<(...), (...)>;
                                        userIsCreator: VirtualType<(...), (...)>;
                                    },
                                >,
                            > = VersionedModelInstance<
                            InferData<
                                {
                                    completed: BooleanType<(...)>;
                                    creator: ObjectType<(...), (...)>;
                                    description: ObjectType<(...), (...)>;
                                    id: StringType<(...)>;
                                    license: StringType<(...)>;
                                    mimeType: StringType<(...)>;
                                    name: StringType<(...)>;
                                    source: ObjectType<(...), (...)>;
                                    uploadedBy: StringType<(...)>;
                                    uploadedOn: DateType<(...)>;
                                    userCanDelete: VirtualType<(...), (...)>;
                                    userIsCreator: VirtualType<(...), (...)>;
                                },
                            >,
                            InferVirtual<
                                {
                                    completed: BooleanType<(...)>;
                                    creator: ObjectType<(...), (...)>;
                                    description: ObjectType<(...), (...)>;
                                    id: StringType<(...)>;
                                    license: StringType<(...)>;
                                    mimeType: StringType<(...)>;
                                    name: StringType<(...)>;
                                    source: ObjectType<(...), (...)>;
                                    uploadedBy: StringType<(...)>;
                                    uploadedOn: DateType<(...)>;
                                    userCanDelete: VirtualType<(...), (...)>;
                                    userIsCreator: VirtualType<(...), (...)>;
                                },
                            >,
                        >,
                    >(
                        this: TThis,
                        user: RevisionActor,
                        options?: RevisionMetadata,
                    ): Promise<TThis>;
                } & { populateUserInfo(user: UserAccessContext): void } & FileRelations,
            >;
            getValidLicenses(): readonly string[];
        },
        { populateUserInfo(user: UserAccessContext): void },
    >,
> = ...