npm.io
3.0.11 • Published 2 years ago

@types/mongoose-sequence

Licence
MIT
Version
3.0.11
Deps
2
Size
5 kB
Vulns
0
Weekly
0
Stars
51.4K

Installation

npm install --save @types/mongoose-sequence

Summary

This package contains type definitions for mongoose-sequence (https://github.com/ramiel/mongoose-sequence).

Details

Files were exported from https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/mongoose-sequence.

index.d.ts

/// <reference types="mongoose" />

declare module "mongoose" {
    export interface SequenceOptions {
        inc_field: string; // The name of the field to increment. Mandatory, default is _id
        id?: string | undefined; // Id of the sequence. Is mandatory only for scoped sequences but its use is strongly encouraged.
        reference_fields?: string[] | undefined; // The field to reference for a scoped counter. Optional
        disable_hooks?: boolean | undefined; // If true, the counter will not be incremented on saving a new document. Default to false
        collection_name?: string | undefined; // By default the collection name to mantain the status of the counters is counters. You can override it using this option
    }

    export interface SequenceDocument extends Document {
        setNext(sequenceId: string, callback: (err: any, res: SequenceDocument) => void): void;
    }

    export interface SequenceSchema extends Schema {
        plugin(
            plugin: (schema: SequenceSchema, options: SequenceOptions) => void,
            options: SequenceOptions,
        ): this;

        // overload for the default mongoose plugin function
        plugin(plugin: (schema: Schema, options?: Object) => void, opts?: Object): this;
    }
}

declare module "mongoose-sequence" {
    import mongoose = require("mongoose");
    var _: (schema: mongoose.Schema, options?: Object) => void;
    export = _;
}

Additional Details

Credits

These definitions were written by Linus Brolin.