• Create a lazy reference to the BlogPost model for use in other models. Resolves after bootstrap without causing circular import issues.

    Returns VersionedModelConstructor<
        InferData<
            {
                createdBy: StringType<true>;
                createdOn: DateType<false>;
                html: ObjectType<string, false>;
                id: StringType<false>;
                originalLanguage: StringType<true>;
                teamID: StringType<true>;
                text: ObjectType<string, false>;
                title: ObjectType<string, false>;
                userCanDelete: VirtualType<unknown, false>;
                userCanEdit: VirtualType<unknown, false>;
            },
        >,
        InferVirtual<
            {
                createdBy: StringType<true>;
                createdOn: DateType<false>;
                html: ObjectType<string, false>;
                id: StringType<false>;
                originalLanguage: StringType<true>;
                teamID: StringType<true>;
                text: ObjectType<string, false>;
                title: ObjectType<string, false>;
                userCanDelete: VirtualType<unknown, false>;
                userCanEdit: VirtualType<unknown, false>;
            },
        >,
        InferData<
            {
                createdBy: StringType<true>;
                createdOn: DateType<false>;
                html: ObjectType<string, false>;
                id: StringType<false>;
                originalLanguage: StringType<true>;
                teamID: StringType<true>;
                text: ObjectType<string, false>;
                title: ObjectType<string, false>;
                userCanDelete: VirtualType<unknown, false>;
                userCanEdit: VirtualType<unknown, false>;
            },
        > & InferVirtual<
            {
                createdBy: StringType<true>;
                createdOn: DateType<false>;
                html: ObjectType<string, false>;
                id: StringType<false>;
                originalLanguage: StringType<true>;
                teamID: StringType<true>;
                text: ObjectType<string, false>;
                title: ObjectType<string, false>;
                userCanDelete: VirtualType<unknown, false>;
                userCanEdit: VirtualType<unknown, false>;
            },
        > & ModelInstanceCore<
            InferData<
                {
                    createdBy: StringType<true>;
                    createdOn: DateType<false>;
                    html: ObjectType<string, false>;
                    id: StringType<false>;
                    originalLanguage: StringType<true>;
                    teamID: StringType<true>;
                    text: ObjectType<string, false>;
                    title: ObjectType<string, false>;
                    userCanDelete: VirtualType<unknown, false>;
                    userCanEdit: VirtualType<unknown, false>;
                },
            >,
            InferVirtual<
                {
                    createdBy: StringType<true>;
                    createdOn: DateType<false>;
                    html: ObjectType<string, false>;
                    id: StringType<false>;
                    originalLanguage: StringType<true>;
                    teamID: StringType<true>;
                    text: ObjectType<string, false>;
                    title: ObjectType<string, false>;
                    userCanDelete: VirtualType<unknown, false>;
                    userCanEdit: VirtualType<unknown, false>;
                },
            >,
        > & RevisionFieldMap & {
            deleteAllRevisions<
                TThis extends
                    VersionedModelInstance<
                        InferData<
                            {
                                createdBy: StringType<true>;
                                createdOn: DateType<false>;
                                html: ObjectType<string, false>;
                                id: StringType<false>;
                                originalLanguage: StringType<true>;
                                teamID: StringType<true>;
                                text: ObjectType<string, false>;
                                title: ObjectType<string, false>;
                                userCanDelete: VirtualType<unknown, false>;
                                userCanEdit: VirtualType<unknown, false>;
                            },
                        >,
                        InferVirtual<
                            {
                                createdBy: StringType<true>;
                                createdOn: DateType<false>;
                                html: ObjectType<string, false>;
                                id: StringType<false>;
                                originalLanguage: StringType<true>;
                                teamID: StringType<true>;
                                text: ObjectType<string, false>;
                                title: ObjectType<string, false>;
                                userCanDelete: VirtualType<unknown, false>;
                                userCanEdit: VirtualType<unknown, false>;
                            },
                        >,
                    > = VersionedModelInstance<
                    InferData<
                        {
                            createdBy: StringType<true>;
                            createdOn: DateType<false>;
                            html: ObjectType<string, false>;
                            id: StringType<false>;
                            originalLanguage: StringType<true>;
                            teamID: StringType<true>;
                            text: ObjectType<string, false>;
                            title: ObjectType<string, false>;
                            userCanDelete: VirtualType<unknown, false>;
                            userCanEdit: VirtualType<unknown, false>;
                        },
                    >,
                    InferVirtual<
                        {
                            createdBy: StringType<true>;
                            createdOn: DateType<false>;
                            html: ObjectType<string, false>;
                            id: StringType<false>;
                            originalLanguage: StringType<true>;
                            teamID: StringType<true>;
                            text: ObjectType<string, false>;
                            title: ObjectType<string, false>;
                            userCanDelete: VirtualType<unknown, false>;
                            userCanEdit: VirtualType<unknown, false>;
                        },
                    >,
                >,
            >(
                this: TThis,
                user?: RevisionActor,
                options?: RevisionMetadata,
            ): Promise<TThis>;
            newRevision<
                TThis extends
                    VersionedModelInstance<
                        InferData<
                            {
                                createdBy: StringType<true>;
                                createdOn: DateType<false>;
                                html: ObjectType<string, false>;
                                id: StringType<false>;
                                originalLanguage: StringType<true>;
                                teamID: StringType<true>;
                                text: ObjectType<string, false>;
                                title: ObjectType<string, false>;
                                userCanDelete: VirtualType<unknown, false>;
                                userCanEdit: VirtualType<unknown, false>;
                            },
                        >,
                        InferVirtual<
                            {
                                createdBy: StringType<true>;
                                createdOn: DateType<false>;
                                html: ObjectType<string, false>;
                                id: StringType<false>;
                                originalLanguage: StringType<true>;
                                teamID: StringType<true>;
                                text: ObjectType<string, false>;
                                title: ObjectType<string, false>;
                                userCanDelete: VirtualType<unknown, false>;
                                userCanEdit: VirtualType<unknown, false>;
                            },
                        >,
                    > = VersionedModelInstance<
                    InferData<
                        {
                            createdBy: StringType<true>;
                            createdOn: DateType<false>;
                            html: ObjectType<string, false>;
                            id: StringType<false>;
                            originalLanguage: StringType<true>;
                            teamID: StringType<true>;
                            text: ObjectType<string, false>;
                            title: ObjectType<string, false>;
                            userCanDelete: VirtualType<unknown, false>;
                            userCanEdit: VirtualType<unknown, false>;
                        },
                    >,
                    InferVirtual<
                        {
                            createdBy: StringType<true>;
                            createdOn: DateType<false>;
                            html: ObjectType<string, false>;
                            id: StringType<false>;
                            originalLanguage: StringType<true>;
                            teamID: StringType<true>;
                            text: ObjectType<string, false>;
                            title: ObjectType<string, false>;
                            userCanDelete: VirtualType<unknown, false>;
                            userCanEdit: VirtualType<unknown, false>;
                        },
                    >,
                >,
            >(
                this: TThis,
                user: RevisionActor,
                options?: RevisionMetadata,
            ): Promise<TThis>;
        } & { populateUserInfo(user: UserAccessContext): void },
        never,
    > & {
        getMostRecentBlogPosts(
            teamID: string,
            options?: BlogPostFeedOptions,
        ): Promise<
            {
                blogPosts: (
                    InferData<
                        {
                            createdBy: StringType<true>;
                            createdOn: DateType<false>;
                            html: ObjectType<string, false>;
                            id: StringType<false>;
                            originalLanguage: StringType<true>;
                            teamID: StringType<true>;
                            text: ObjectType<string, false>;
                            title: ObjectType<string, false>;
                            userCanDelete: VirtualType<unknown, false>;
                            userCanEdit: VirtualType<unknown, false>;
                        },
                    > & InferVirtual<
                        {
                            createdBy: StringType<true>;
                            createdOn: DateType<false>;
                            html: ObjectType<string, false>;
                            id: StringType<false>;
                            originalLanguage: StringType<true>;
                            teamID: StringType<true>;
                            text: ObjectType<string, false>;
                            title: ObjectType<string, false>;
                            userCanDelete: VirtualType<unknown, false>;
                            userCanEdit: VirtualType<unknown, false>;
                        },
                    > & ModelInstanceCore<
                        InferData<
                            {
                                createdBy: StringType<true>;
                                createdOn: DateType<false>;
                                html: ObjectType<string, false>;
                                id: StringType<false>;
                                originalLanguage: StringType<true>;
                                teamID: StringType<true>;
                                text: ObjectType<string, false>;
                                title: ObjectType<string, false>;
                                userCanDelete: VirtualType<unknown, false>;
                                userCanEdit: VirtualType<unknown, false>;
                            },
                        >,
                        InferVirtual<
                            {
                                createdBy: StringType<true>;
                                createdOn: DateType<false>;
                                html: ObjectType<string, false>;
                                id: StringType<false>;
                                originalLanguage: StringType<true>;
                                teamID: StringType<true>;
                                text: ObjectType<string, false>;
                                title: ObjectType<string, false>;
                                userCanDelete: VirtualType<unknown, false>;
                                userCanEdit: VirtualType<unknown, false>;
                            },
                        >,
                    > & RevisionFieldMap & {
                        deleteAllRevisions<
                            TThis extends
                                VersionedModelInstance<
                                    InferData<
                                        {
                                            createdBy: StringType<(...)>;
                                            createdOn: DateType<(...)>;
                                            html: ObjectType<(...), (...)>;
                                            id: StringType<(...)>;
                                            originalLanguage: StringType<(...)>;
                                            teamID: StringType<(...)>;
                                            text: ObjectType<(...), (...)>;
                                            title: ObjectType<(...), (...)>;
                                            userCanDelete: VirtualType<(...), (...)>;
                                            userCanEdit: VirtualType<(...), (...)>;
                                        },
                                    >,
                                    InferVirtual<
                                        {
                                            createdBy: StringType<(...)>;
                                            createdOn: DateType<(...)>;
                                            html: ObjectType<(...), (...)>;
                                            id: StringType<(...)>;
                                            originalLanguage: StringType<(...)>;
                                            teamID: StringType<(...)>;
                                            text: ObjectType<(...), (...)>;
                                            title: ObjectType<(...), (...)>;
                                            userCanDelete: VirtualType<(...), (...)>;
                                            userCanEdit: VirtualType<(...), (...)>;
                                        },
                                    >,
                                > = VersionedModelInstance<
                                InferData<
                                    {
                                        createdBy: StringType<(...)>;
                                        createdOn: DateType<(...)>;
                                        html: ObjectType<(...), (...)>;
                                        id: StringType<(...)>;
                                        originalLanguage: StringType<(...)>;
                                        teamID: StringType<(...)>;
                                        text: ObjectType<(...), (...)>;
                                        title: ObjectType<(...), (...)>;
                                        userCanDelete: VirtualType<(...), (...)>;
                                        userCanEdit: VirtualType<(...), (...)>;
                                    },
                                >,
                                InferVirtual<
                                    {
                                        createdBy: StringType<(...)>;
                                        createdOn: DateType<(...)>;
                                        html: ObjectType<(...), (...)>;
                                        id: StringType<(...)>;
                                        originalLanguage: StringType<(...)>;
                                        teamID: StringType<(...)>;
                                        text: ObjectType<(...), (...)>;
                                        title: ObjectType<(...), (...)>;
                                        userCanDelete: VirtualType<(...), (...)>;
                                        userCanEdit: VirtualType<(...), (...)>;
                                    },
                                >,
                            >,
                        >(
                            this: TThis,
                            user?: RevisionActor,
                            options?: RevisionMetadata,
                        ): Promise<TThis>;
                        newRevision<
                            TThis extends
                                VersionedModelInstance<
                                    InferData<
                                        {
                                            createdBy: StringType<(...)>;
                                            createdOn: DateType<(...)>;
                                            html: ObjectType<(...), (...)>;
                                            id: StringType<(...)>;
                                            originalLanguage: StringType<(...)>;
                                            teamID: StringType<(...)>;
                                            text: ObjectType<(...), (...)>;
                                            title: ObjectType<(...), (...)>;
                                            userCanDelete: VirtualType<(...), (...)>;
                                            userCanEdit: VirtualType<(...), (...)>;
                                        },
                                    >,
                                    InferVirtual<
                                        {
                                            createdBy: StringType<(...)>;
                                            createdOn: DateType<(...)>;
                                            html: ObjectType<(...), (...)>;
                                            id: StringType<(...)>;
                                            originalLanguage: StringType<(...)>;
                                            teamID: StringType<(...)>;
                                            text: ObjectType<(...), (...)>;
                                            title: ObjectType<(...), (...)>;
                                            userCanDelete: VirtualType<(...), (...)>;
                                            userCanEdit: VirtualType<(...), (...)>;
                                        },
                                    >,
                                > = VersionedModelInstance<
                                InferData<
                                    {
                                        createdBy: StringType<(...)>;
                                        createdOn: DateType<(...)>;
                                        html: ObjectType<(...), (...)>;
                                        id: StringType<(...)>;
                                        originalLanguage: StringType<(...)>;
                                        teamID: StringType<(...)>;
                                        text: ObjectType<(...), (...)>;
                                        title: ObjectType<(...), (...)>;
                                        userCanDelete: VirtualType<(...), (...)>;
                                        userCanEdit: VirtualType<(...), (...)>;
                                    },
                                >,
                                InferVirtual<
                                    {
                                        createdBy: StringType<(...)>;
                                        createdOn: DateType<(...)>;
                                        html: ObjectType<(...), (...)>;
                                        id: StringType<(...)>;
                                        originalLanguage: StringType<(...)>;
                                        teamID: StringType<(...)>;
                                        text: ObjectType<(...), (...)>;
                                        title: ObjectType<(...), (...)>;
                                        userCanDelete: VirtualType<(...), (...)>;
                                        userCanEdit: VirtualType<(...), (...)>;
                                    },
                                >,
                            >,
                        >(
                            this: TThis,
                            user: RevisionActor,
                            options?: RevisionMetadata,
                        ): Promise<TThis>;
                    } & { populateUserInfo(user: UserAccessContext): void } & BlogPostRelations
                )[];
                offsetDate?: Date;
            },
        >;
        getMostRecentBlogPostsBySlug(
            teamSlugName: string,
            options?: BlogPostFeedOptions,
        ): Promise<
            {
                blogPosts: (
                    InferData<
                        {
                            createdBy: StringType<true>;
                            createdOn: DateType<false>;
                            html: ObjectType<string, false>;
                            id: StringType<false>;
                            originalLanguage: StringType<true>;
                            teamID: StringType<true>;
                            text: ObjectType<string, false>;
                            title: ObjectType<string, false>;
                            userCanDelete: VirtualType<unknown, false>;
                            userCanEdit: VirtualType<unknown, false>;
                        },
                    > & InferVirtual<
                        {
                            createdBy: StringType<true>;
                            createdOn: DateType<false>;
                            html: ObjectType<string, false>;
                            id: StringType<false>;
                            originalLanguage: StringType<true>;
                            teamID: StringType<true>;
                            text: ObjectType<string, false>;
                            title: ObjectType<string, false>;
                            userCanDelete: VirtualType<unknown, false>;
                            userCanEdit: VirtualType<unknown, false>;
                        },
                    > & ModelInstanceCore<
                        InferData<
                            {
                                createdBy: StringType<true>;
                                createdOn: DateType<false>;
                                html: ObjectType<string, false>;
                                id: StringType<false>;
                                originalLanguage: StringType<true>;
                                teamID: StringType<true>;
                                text: ObjectType<string, false>;
                                title: ObjectType<string, false>;
                                userCanDelete: VirtualType<unknown, false>;
                                userCanEdit: VirtualType<unknown, false>;
                            },
                        >,
                        InferVirtual<
                            {
                                createdBy: StringType<true>;
                                createdOn: DateType<false>;
                                html: ObjectType<string, false>;
                                id: StringType<false>;
                                originalLanguage: StringType<true>;
                                teamID: StringType<true>;
                                text: ObjectType<string, false>;
                                title: ObjectType<string, false>;
                                userCanDelete: VirtualType<unknown, false>;
                                userCanEdit: VirtualType<unknown, false>;
                            },
                        >,
                    > & RevisionFieldMap & {
                        deleteAllRevisions<
                            TThis extends
                                VersionedModelInstance<
                                    InferData<
                                        {
                                            createdBy: StringType<(...)>;
                                            createdOn: DateType<(...)>;
                                            html: ObjectType<(...), (...)>;
                                            id: StringType<(...)>;
                                            originalLanguage: StringType<(...)>;
                                            teamID: StringType<(...)>;
                                            text: ObjectType<(...), (...)>;
                                            title: ObjectType<(...), (...)>;
                                            userCanDelete: VirtualType<(...), (...)>;
                                            userCanEdit: VirtualType<(...), (...)>;
                                        },
                                    >,
                                    InferVirtual<
                                        {
                                            createdBy: StringType<(...)>;
                                            createdOn: DateType<(...)>;
                                            html: ObjectType<(...), (...)>;
                                            id: StringType<(...)>;
                                            originalLanguage: StringType<(...)>;
                                            teamID: StringType<(...)>;
                                            text: ObjectType<(...), (...)>;
                                            title: ObjectType<(...), (...)>;
                                            userCanDelete: VirtualType<(...), (...)>;
                                            userCanEdit: VirtualType<(...), (...)>;
                                        },
                                    >,
                                > = VersionedModelInstance<
                                InferData<
                                    {
                                        createdBy: StringType<(...)>;
                                        createdOn: DateType<(...)>;
                                        html: ObjectType<(...), (...)>;
                                        id: StringType<(...)>;
                                        originalLanguage: StringType<(...)>;
                                        teamID: StringType<(...)>;
                                        text: ObjectType<(...), (...)>;
                                        title: ObjectType<(...), (...)>;
                                        userCanDelete: VirtualType<(...), (...)>;
                                        userCanEdit: VirtualType<(...), (...)>;
                                    },
                                >,
                                InferVirtual<
                                    {
                                        createdBy: StringType<(...)>;
                                        createdOn: DateType<(...)>;
                                        html: ObjectType<(...), (...)>;
                                        id: StringType<(...)>;
                                        originalLanguage: StringType<(...)>;
                                        teamID: StringType<(...)>;
                                        text: ObjectType<(...), (...)>;
                                        title: ObjectType<(...), (...)>;
                                        userCanDelete: VirtualType<(...), (...)>;
                                        userCanEdit: VirtualType<(...), (...)>;
                                    },
                                >,
                            >,
                        >(
                            this: TThis,
                            user?: RevisionActor,
                            options?: RevisionMetadata,
                        ): Promise<TThis>;
                        newRevision<
                            TThis extends
                                VersionedModelInstance<
                                    InferData<
                                        {
                                            createdBy: StringType<(...)>;
                                            createdOn: DateType<(...)>;
                                            html: ObjectType<(...), (...)>;
                                            id: StringType<(...)>;
                                            originalLanguage: StringType<(...)>;
                                            teamID: StringType<(...)>;
                                            text: ObjectType<(...), (...)>;
                                            title: ObjectType<(...), (...)>;
                                            userCanDelete: VirtualType<(...), (...)>;
                                            userCanEdit: VirtualType<(...), (...)>;
                                        },
                                    >,
                                    InferVirtual<
                                        {
                                            createdBy: StringType<(...)>;
                                            createdOn: DateType<(...)>;
                                            html: ObjectType<(...), (...)>;
                                            id: StringType<(...)>;
                                            originalLanguage: StringType<(...)>;
                                            teamID: StringType<(...)>;
                                            text: ObjectType<(...), (...)>;
                                            title: ObjectType<(...), (...)>;
                                            userCanDelete: VirtualType<(...), (...)>;
                                            userCanEdit: VirtualType<(...), (...)>;
                                        },
                                    >,
                                > = VersionedModelInstance<
                                InferData<
                                    {
                                        createdBy: StringType<(...)>;
                                        createdOn: DateType<(...)>;
                                        html: ObjectType<(...), (...)>;
                                        id: StringType<(...)>;
                                        originalLanguage: StringType<(...)>;
                                        teamID: StringType<(...)>;
                                        text: ObjectType<(...), (...)>;
                                        title: ObjectType<(...), (...)>;
                                        userCanDelete: VirtualType<(...), (...)>;
                                        userCanEdit: VirtualType<(...), (...)>;
                                    },
                                >,
                                InferVirtual<
                                    {
                                        createdBy: StringType<(...)>;
                                        createdOn: DateType<(...)>;
                                        html: ObjectType<(...), (...)>;
                                        id: StringType<(...)>;
                                        originalLanguage: StringType<(...)>;
                                        teamID: StringType<(...)>;
                                        text: ObjectType<(...), (...)>;
                                        title: ObjectType<(...), (...)>;
                                        userCanDelete: VirtualType<(...), (...)>;
                                        userCanEdit: VirtualType<(...), (...)>;
                                    },
                                >,
                            >,
                        >(
                            this: TThis,
                            user: RevisionActor,
                            options?: RevisionMetadata,
                        ): Promise<TThis>;
                    } & { populateUserInfo(user: UserAccessContext): void } & BlogPostRelations
                )[];
                offsetDate?: Date;
            },
        >;
        getWithCreator(
            id: string,
        ): Promise<
            InferData<
                {
                    createdBy: StringType<true>;
                    createdOn: DateType<false>;
                    html: ObjectType<string, false>;
                    id: StringType<false>;
                    originalLanguage: StringType<true>;
                    teamID: StringType<true>;
                    text: ObjectType<string, false>;
                    title: ObjectType<string, false>;
                    userCanDelete: VirtualType<unknown, false>;
                    userCanEdit: VirtualType<unknown, false>;
                },
            > & InferVirtual<
                {
                    createdBy: StringType<true>;
                    createdOn: DateType<false>;
                    html: ObjectType<string, false>;
                    id: StringType<false>;
                    originalLanguage: StringType<true>;
                    teamID: StringType<true>;
                    text: ObjectType<string, false>;
                    title: ObjectType<string, false>;
                    userCanDelete: VirtualType<unknown, false>;
                    userCanEdit: VirtualType<unknown, false>;
                },
            > & ModelInstanceCore<
                InferData<
                    {
                        createdBy: StringType<true>;
                        createdOn: DateType<false>;
                        html: ObjectType<string, false>;
                        id: StringType<false>;
                        originalLanguage: StringType<true>;
                        teamID: StringType<true>;
                        text: ObjectType<string, false>;
                        title: ObjectType<string, false>;
                        userCanDelete: VirtualType<unknown, false>;
                        userCanEdit: VirtualType<unknown, false>;
                    },
                >,
                InferVirtual<
                    {
                        createdBy: StringType<true>;
                        createdOn: DateType<false>;
                        html: ObjectType<string, false>;
                        id: StringType<false>;
                        originalLanguage: StringType<true>;
                        teamID: StringType<true>;
                        text: ObjectType<string, false>;
                        title: ObjectType<string, false>;
                        userCanDelete: VirtualType<unknown, false>;
                        userCanEdit: VirtualType<unknown, false>;
                    },
                >,
            > & RevisionFieldMap & {
                deleteAllRevisions<
                    TThis extends
                        VersionedModelInstance<
                            InferData<
                                {
                                    createdBy: StringType<true>;
                                    createdOn: DateType<false>;
                                    html: ObjectType<string, false>;
                                    id: StringType<false>;
                                    originalLanguage: StringType<true>;
                                    teamID: StringType<true>;
                                    text: ObjectType<string, false>;
                                    title: ObjectType<string, false>;
                                    userCanDelete: VirtualType<unknown, false>;
                                    userCanEdit: VirtualType<unknown, false>;
                                },
                            >,
                            InferVirtual<
                                {
                                    createdBy: StringType<true>;
                                    createdOn: DateType<false>;
                                    html: ObjectType<string, false>;
                                    id: StringType<false>;
                                    originalLanguage: StringType<true>;
                                    teamID: StringType<true>;
                                    text: ObjectType<string, false>;
                                    title: ObjectType<string, false>;
                                    userCanDelete: VirtualType<unknown, false>;
                                    userCanEdit: VirtualType<unknown, false>;
                                },
                            >,
                        > = VersionedModelInstance<
                        InferData<
                            {
                                createdBy: StringType<true>;
                                createdOn: DateType<false>;
                                html: ObjectType<string, false>;
                                id: StringType<false>;
                                originalLanguage: StringType<true>;
                                teamID: StringType<true>;
                                text: ObjectType<string, false>;
                                title: ObjectType<string, false>;
                                userCanDelete: VirtualType<unknown, false>;
                                userCanEdit: VirtualType<unknown, false>;
                            },
                        >,
                        InferVirtual<
                            {
                                createdBy: StringType<true>;
                                createdOn: DateType<false>;
                                html: ObjectType<string, false>;
                                id: StringType<false>;
                                originalLanguage: StringType<true>;
                                teamID: StringType<true>;
                                text: ObjectType<string, false>;
                                title: ObjectType<string, false>;
                                userCanDelete: VirtualType<unknown, false>;
                                userCanEdit: VirtualType<unknown, false>;
                            },
                        >,
                    >,
                >(
                    this: TThis,
                    user?: RevisionActor,
                    options?: RevisionMetadata,
                ): Promise<TThis>;
                newRevision<
                    TThis extends
                        VersionedModelInstance<
                            InferData<
                                {
                                    createdBy: StringType<true>;
                                    createdOn: DateType<false>;
                                    html: ObjectType<string, false>;
                                    id: StringType<false>;
                                    originalLanguage: StringType<true>;
                                    teamID: StringType<true>;
                                    text: ObjectType<string, false>;
                                    title: ObjectType<string, false>;
                                    userCanDelete: VirtualType<unknown, false>;
                                    userCanEdit: VirtualType<unknown, false>;
                                },
                            >,
                            InferVirtual<
                                {
                                    createdBy: StringType<true>;
                                    createdOn: DateType<false>;
                                    html: ObjectType<string, false>;
                                    id: StringType<false>;
                                    originalLanguage: StringType<true>;
                                    teamID: StringType<true>;
                                    text: ObjectType<string, false>;
                                    title: ObjectType<string, false>;
                                    userCanDelete: VirtualType<unknown, false>;
                                    userCanEdit: VirtualType<unknown, false>;
                                },
                            >,
                        > = VersionedModelInstance<
                        InferData<
                            {
                                createdBy: StringType<true>;
                                createdOn: DateType<false>;
                                html: ObjectType<string, false>;
                                id: StringType<false>;
                                originalLanguage: StringType<true>;
                                teamID: StringType<true>;
                                text: ObjectType<string, false>;
                                title: ObjectType<string, false>;
                                userCanDelete: VirtualType<unknown, false>;
                                userCanEdit: VirtualType<unknown, false>;
                            },
                        >,
                        InferVirtual<
                            {
                                createdBy: StringType<true>;
                                createdOn: DateType<false>;
                                html: ObjectType<string, false>;
                                id: StringType<false>;
                                originalLanguage: StringType<true>;
                                teamID: StringType<true>;
                                text: ObjectType<string, false>;
                                title: ObjectType<string, false>;
                                userCanDelete: VirtualType<unknown, false>;
                                userCanEdit: VirtualType<unknown, false>;
                            },
                        >,
                    >,
                >(
                    this: TThis,
                    user: RevisionActor,
                    options?: RevisionMetadata,
                ): Promise<TThis>;
            } & { populateUserInfo(user: UserAccessContext): void } & BlogPostRelations,
        >;
    } & CreateFromRowStatic<
        MergeManifestMethods<
            {
                camelToSnake: {
                    createdBy: "created_by";
                    createdOn: "created_on";
                    originalLanguage: "original_language";
                    teamID: "team_id";
                };
                hasRevisions: true;
                schema: {
                    createdBy: StringType<true>;
                    createdOn: DateType<false>;
                    html: ObjectType<string, false>;
                    id: StringType<false>;
                    originalLanguage: StringType<true>;
                    teamID: StringType<true>;
                    text: ObjectType<string, false>;
                    title: ObjectType<string, false>;
                    userCanDelete: VirtualType<unknown, false>;
                    userCanEdit: VirtualType<unknown, false>;
                };
                tableName: "blog_posts";
            },
            {
                getMostRecentBlogPosts(
                    teamID: string,
                    options?: BlogPostFeedOptions,
                ): Promise<
                    {
                        blogPosts: (
                            InferData<
                                {
                                    createdBy: StringType<(...)>;
                                    createdOn: DateType<(...)>;
                                    html: ObjectType<(...), (...)>;
                                    id: StringType<(...)>;
                                    originalLanguage: StringType<(...)>;
                                    teamID: StringType<(...)>;
                                    text: ObjectType<(...), (...)>;
                                    title: ObjectType<(...), (...)>;
                                    userCanDelete: VirtualType<(...), (...)>;
                                    userCanEdit: VirtualType<(...), (...)>;
                                },
                            > & InferVirtual<
                                {
                                    createdBy: StringType<(...)>;
                                    createdOn: DateType<(...)>;
                                    html: ObjectType<(...), (...)>;
                                    id: StringType<(...)>;
                                    originalLanguage: StringType<(...)>;
                                    teamID: StringType<(...)>;
                                    text: ObjectType<(...), (...)>;
                                    title: ObjectType<(...), (...)>;
                                    userCanDelete: VirtualType<(...), (...)>;
                                    userCanEdit: VirtualType<(...), (...)>;
                                },
                            > & ModelInstanceCore<
                                InferData<
                                    {
                                        createdBy: ...;
                                        createdOn: ...;
                                        html: ...;
                                        id: ...;
                                        originalLanguage: ...;
                                        teamID: ...;
                                        text: ...;
                                        title: ...;
                                        userCanDelete: ...;
                                        userCanEdit: ...;
                                    },
                                >,
                                InferVirtual<
                                    {
                                        createdBy: ...;
                                        createdOn: ...;
                                        html: ...;
                                        id: ...;
                                        originalLanguage: ...;
                                        teamID: ...;
                                        text: ...;
                                        title: ...;
                                        userCanDelete: ...;
                                        userCanEdit: ...;
                                    },
                                >,
                            > & RevisionFieldMap & {
                                deleteAllRevisions<
                                    TThis extends
                                        VersionedModelInstance<InferData<(...)>, InferVirtual<(...)>> = VersionedModelInstance<
                                        InferData<(...)>,
                                        InferVirtual<(...)>,
                                    >,
                                >(
                                    this: TThis,
                                    user?: RevisionActor,
                                    options?: RevisionMetadata,
                                ): Promise<TThis>;
                                newRevision<
                                    TThis extends
                                        VersionedModelInstance<InferData<(...)>, InferVirtual<(...)>> = VersionedModelInstance<
                                        InferData<(...)>,
                                        InferVirtual<(...)>,
                                    >,
                                >(
                                    this: TThis,
                                    user: RevisionActor,
                                    options?: RevisionMetadata,
                                ): Promise<TThis>;
                            } & { populateUserInfo(user: UserAccessContext): void } & BlogPostRelations
                        )[];
                        offsetDate?: Date;
                    },
                >;
                getMostRecentBlogPostsBySlug(
                    teamSlugName: string,
                    options?: BlogPostFeedOptions,
                ): Promise<
                    {
                        blogPosts: (
                            InferData<
                                {
                                    createdBy: StringType<(...)>;
                                    createdOn: DateType<(...)>;
                                    html: ObjectType<(...), (...)>;
                                    id: StringType<(...)>;
                                    originalLanguage: StringType<(...)>;
                                    teamID: StringType<(...)>;
                                    text: ObjectType<(...), (...)>;
                                    title: ObjectType<(...), (...)>;
                                    userCanDelete: VirtualType<(...), (...)>;
                                    userCanEdit: VirtualType<(...), (...)>;
                                },
                            > & InferVirtual<
                                {
                                    createdBy: StringType<(...)>;
                                    createdOn: DateType<(...)>;
                                    html: ObjectType<(...), (...)>;
                                    id: StringType<(...)>;
                                    originalLanguage: StringType<(...)>;
                                    teamID: StringType<(...)>;
                                    text: ObjectType<(...), (...)>;
                                    title: ObjectType<(...), (...)>;
                                    userCanDelete: VirtualType<(...), (...)>;
                                    userCanEdit: VirtualType<(...), (...)>;
                                },
                            > & ModelInstanceCore<
                                InferData<
                                    {
                                        createdBy: ...;
                                        createdOn: ...;
                                        html: ...;
                                        id: ...;
                                        originalLanguage: ...;
                                        teamID: ...;
                                        text: ...;
                                        title: ...;
                                        userCanDelete: ...;
                                        userCanEdit: ...;
                                    },
                                >,
                                InferVirtual<
                                    {
                                        createdBy: ...;
                                        createdOn: ...;
                                        html: ...;
                                        id: ...;
                                        originalLanguage: ...;
                                        teamID: ...;
                                        text: ...;
                                        title: ...;
                                        userCanDelete: ...;
                                        userCanEdit: ...;
                                    },
                                >,
                            > & RevisionFieldMap & {
                                deleteAllRevisions<
                                    TThis extends
                                        VersionedModelInstance<InferData<(...)>, InferVirtual<(...)>> = VersionedModelInstance<
                                        InferData<(...)>,
                                        InferVirtual<(...)>,
                                    >,
                                >(
                                    this: TThis,
                                    user?: RevisionActor,
                                    options?: RevisionMetadata,
                                ): Promise<TThis>;
                                newRevision<
                                    TThis extends
                                        VersionedModelInstance<InferData<(...)>, InferVirtual<(...)>> = VersionedModelInstance<
                                        InferData<(...)>,
                                        InferVirtual<(...)>,
                                    >,
                                >(
                                    this: TThis,
                                    user: RevisionActor,
                                    options?: RevisionMetadata,
                                ): Promise<TThis>;
                            } & { populateUserInfo(user: UserAccessContext): void } & BlogPostRelations
                        )[];
                        offsetDate?: Date;
                    },
                >;
                getWithCreator(
                    id: string,
                ): Promise<
                    InferData<
                        {
                            createdBy: StringType<true>;
                            createdOn: DateType<false>;
                            html: ObjectType<string, false>;
                            id: StringType<false>;
                            originalLanguage: StringType<true>;
                            teamID: StringType<true>;
                            text: ObjectType<string, false>;
                            title: ObjectType<string, false>;
                            userCanDelete: VirtualType<unknown, false>;
                            userCanEdit: VirtualType<unknown, false>;
                        },
                    > & InferVirtual<
                        {
                            createdBy: StringType<true>;
                            createdOn: DateType<false>;
                            html: ObjectType<string, false>;
                            id: StringType<false>;
                            originalLanguage: StringType<true>;
                            teamID: StringType<true>;
                            text: ObjectType<string, false>;
                            title: ObjectType<string, false>;
                            userCanDelete: VirtualType<unknown, false>;
                            userCanEdit: VirtualType<unknown, false>;
                        },
                    > & ModelInstanceCore<
                        InferData<
                            {
                                createdBy: StringType<true>;
                                createdOn: DateType<false>;
                                html: ObjectType<string, false>;
                                id: StringType<false>;
                                originalLanguage: StringType<true>;
                                teamID: StringType<true>;
                                text: ObjectType<string, false>;
                                title: ObjectType<string, false>;
                                userCanDelete: VirtualType<unknown, false>;
                                userCanEdit: VirtualType<unknown, false>;
                            },
                        >,
                        InferVirtual<
                            {
                                createdBy: StringType<true>;
                                createdOn: DateType<false>;
                                html: ObjectType<string, false>;
                                id: StringType<false>;
                                originalLanguage: StringType<true>;
                                teamID: StringType<true>;
                                text: ObjectType<string, false>;
                                title: ObjectType<string, false>;
                                userCanDelete: VirtualType<unknown, false>;
                                userCanEdit: VirtualType<unknown, false>;
                            },
                        >,
                    > & RevisionFieldMap & {
                        deleteAllRevisions<
                            TThis extends
                                VersionedModelInstance<
                                    InferData<
                                        {
                                            createdBy: StringType<(...)>;
                                            createdOn: DateType<(...)>;
                                            html: ObjectType<(...), (...)>;
                                            id: StringType<(...)>;
                                            originalLanguage: StringType<(...)>;
                                            teamID: StringType<(...)>;
                                            text: ObjectType<(...), (...)>;
                                            title: ObjectType<(...), (...)>;
                                            userCanDelete: VirtualType<(...), (...)>;
                                            userCanEdit: VirtualType<(...), (...)>;
                                        },
                                    >,
                                    InferVirtual<
                                        {
                                            createdBy: StringType<(...)>;
                                            createdOn: DateType<(...)>;
                                            html: ObjectType<(...), (...)>;
                                            id: StringType<(...)>;
                                            originalLanguage: StringType<(...)>;
                                            teamID: StringType<(...)>;
                                            text: ObjectType<(...), (...)>;
                                            title: ObjectType<(...), (...)>;
                                            userCanDelete: VirtualType<(...), (...)>;
                                            userCanEdit: VirtualType<(...), (...)>;
                                        },
                                    >,
                                > = VersionedModelInstance<
                                InferData<
                                    {
                                        createdBy: StringType<(...)>;
                                        createdOn: DateType<(...)>;
                                        html: ObjectType<(...), (...)>;
                                        id: StringType<(...)>;
                                        originalLanguage: StringType<(...)>;
                                        teamID: StringType<(...)>;
                                        text: ObjectType<(...), (...)>;
                                        title: ObjectType<(...), (...)>;
                                        userCanDelete: VirtualType<(...), (...)>;
                                        userCanEdit: VirtualType<(...), (...)>;
                                    },
                                >,
                                InferVirtual<
                                    {
                                        createdBy: StringType<(...)>;
                                        createdOn: DateType<(...)>;
                                        html: ObjectType<(...), (...)>;
                                        id: StringType<(...)>;
                                        originalLanguage: StringType<(...)>;
                                        teamID: StringType<(...)>;
                                        text: ObjectType<(...), (...)>;
                                        title: ObjectType<(...), (...)>;
                                        userCanDelete: VirtualType<(...), (...)>;
                                        userCanEdit: VirtualType<(...), (...)>;
                                    },
                                >,
                            >,
                        >(
                            this: TThis,
                            user?: RevisionActor,
                            options?: RevisionMetadata,
                        ): Promise<TThis>;
                        newRevision<
                            TThis extends
                                VersionedModelInstance<
                                    InferData<
                                        {
                                            createdBy: StringType<(...)>;
                                            createdOn: DateType<(...)>;
                                            html: ObjectType<(...), (...)>;
                                            id: StringType<(...)>;
                                            originalLanguage: StringType<(...)>;
                                            teamID: StringType<(...)>;
                                            text: ObjectType<(...), (...)>;
                                            title: ObjectType<(...), (...)>;
                                            userCanDelete: VirtualType<(...), (...)>;
                                            userCanEdit: VirtualType<(...), (...)>;
                                        },
                                    >,
                                    InferVirtual<
                                        {
                                            createdBy: StringType<(...)>;
                                            createdOn: DateType<(...)>;
                                            html: ObjectType<(...), (...)>;
                                            id: StringType<(...)>;
                                            originalLanguage: StringType<(...)>;
                                            teamID: StringType<(...)>;
                                            text: ObjectType<(...), (...)>;
                                            title: ObjectType<(...), (...)>;
                                            userCanDelete: VirtualType<(...), (...)>;
                                            userCanEdit: VirtualType<(...), (...)>;
                                        },
                                    >,
                                > = VersionedModelInstance<
                                InferData<
                                    {
                                        createdBy: StringType<(...)>;
                                        createdOn: DateType<(...)>;
                                        html: ObjectType<(...), (...)>;
                                        id: StringType<(...)>;
                                        originalLanguage: StringType<(...)>;
                                        teamID: StringType<(...)>;
                                        text: ObjectType<(...), (...)>;
                                        title: ObjectType<(...), (...)>;
                                        userCanDelete: VirtualType<(...), (...)>;
                                        userCanEdit: VirtualType<(...), (...)>;
                                    },
                                >,
                                InferVirtual<
                                    {
                                        createdBy: StringType<(...)>;
                                        createdOn: DateType<(...)>;
                                        html: ObjectType<(...), (...)>;
                                        id: StringType<(...)>;
                                        originalLanguage: StringType<(...)>;
                                        teamID: StringType<(...)>;
                                        text: ObjectType<(...), (...)>;
                                        title: ObjectType<(...), (...)>;
                                        userCanDelete: VirtualType<(...), (...)>;
                                        userCanEdit: VirtualType<(...), (...)>;
                                    },
                                >,
                            >,
                        >(
                            this: TThis,
                            user: RevisionActor,
                            options?: RevisionMetadata,
                        ): Promise<TThis>;
                    } & { populateUserInfo(user: UserAccessContext): void } & BlogPostRelations,
                >;
            },
            { populateUserInfo(user: UserAccessContext): void },
        >,
    >

    Typed BlogPost model constructor