text: // This file is automatically generated by JSDoc; regenerate it with scripts/admin/jsdoc/jsdoc.sh
  DocsData = {
    "Accounts": {
      "kind": "namespace",
      "longname": "Accounts",
      "name": "Accounts",
      "summary": "The namespace for all accounts-related methods."
    },
    "Accounts.changePassword": {
      "kind": "function",
      "locus": "Client",
      "longname": "Accounts.changePassword",
      "memberof": "Accounts",
      "name": "changePassword",
      "options": [],
      "params": [
        {
          "description": "<p>The user's current password. This is <strong>not</strong> sent in plain text over the wire.</p>",
          "name": "oldPassword",
          "type": {
            "names": [
              "String"
            ]
          }
        },
        {
          "description": "<p>A new password for the user. This is <strong>not</strong> sent in plain text over the wire.</p>",
          "name": "newPassword",
          "type": {
            "names": [
              "String"
            ]
          }
        },
        {
          "description": "<p>Optional callback. Called with no arguments on success, or with a single <code>Error</code> argument on failure.</p>",
          "name": "callback",
          "optional": true,
          "type": {
            "names": [
              "function"
            ]
          }
        }
      ],
      "scope": "static",
      "summary": "Change the current user's password. Must be logged in."
    },
    "Accounts.config": {
      "kind": "function",
      "locus": "Anywhere",
      "longname": "Accounts.config",
      "memberof": "Accounts",
      "name": "config",
      "options": [
        {
          "description": "<p>New users with an email address will receive an address verification email.</p>",
          "name": "sendVerificationEmail",
          "type": {
            "names": [
              "Boolean"
            ]
          }
        },
        {
          "description": "<p>Calls to <a href=\"#accounts_createuser\"><code>createUser</code></a> from the client will be rejected. In addition, if you are using <a href=\"#accountsui\">accounts-ui</a>, the &quot;Create account&quot; link will not be available.</p>",
          "name": "forbidClientAccountCreation",
          "type": {
            "names": [
              "Boolean"
            ]
          }
        },
        {
          "description": "<p>If set to a string, only allows new users if the domain part of their email address matches the string. If set to a function, only allows new users if the function returns true.  The function is passed the full email address of the proposed new user.  Works with password-based sign-in and external services that expose email addresses (Google, Facebook, GitHub). All existing users still can log in after enabling this option. Example: <code>Accounts.config({ restrictCreationByEmailDomain: 'school.edu' })</code>.</p>",
          "name": "restrictCreationByEmailDomain",
          "type": {
            "names": [
              "String",
              "function"
            ]
          }
        },
        {
          "description": "<p>The number of days from when a user logs in until their token expires and they are logged out. Defaults to 90. Set to <code>null</code> to disable login expiration.</p>",
          "name": "loginExpirationInDays",
          "type": {
            "names": [
              "Number"
            ]
          }
        },
        {
          "description": "<p>When using the <code>oauth-encryption</code> package, the 16 byte key using to encrypt sensitive account credentials in the database, encoded in base64.  This option may only be specifed on the server.  See packages/oauth-encryption/README.md for details.</p>",
          "name": "oauthSecretKey",
          "type": {
            "names": [
              "String"
            ]
          }
        }
      ],
      "params": [
        {
          "name": "options",
          "type": {
            "names": [
              "Object"
            ]
          }
        }
      ],
      "scope": "static",
      "summary": "Set global accounts options."
    },
    "Accounts.createUser": {
      "kind": "function",
      "locus": "Anywhere",
      "longname": "Accounts.createUser",
      "memberof": "Accounts",
      "name": "createUser",
      "options": [
        {
          "description": "<p>A unique name for this user.</p>",
          "name": "username",
          "type": {
            "names": [
              "String"
            ]
          }
        },
        {
          "description": "<p>The user's email address.</p>",
          "name": "email",
          "type": {
            "names": [
              "String"
            ]
          }
        },
        {
          "description": "<p>The user's password. This is <strong>not</strong> sent in plain text over the wire.</p>",
          "name": "password",
          "type": {
            "names": [
              "String"
            ]
          }
        },
        {
          "description": "<p>The user's profile, typically including the <code>name</code> field.</p>",
          "name": "profile",
          "type": {
            "names": [
              "Object"
            ]
          }
        }
      ],
      "params": [
        {
          "name": "options",
          "type": {
            "names": [
              "Object"
            ]
          }
        },
        {
          "description": "<p>Client only, optional callback. Called with no arguments on success, or with a single <code>Error</code> argument on failure.</p>",
          "name": "callback",
          "optional": true,
          "type": {
            "names": [
              "function"
            ]
          }
        }
      ],
      "scope": "static",
      "summary": "Create a new user."
    },
    "Accounts.emailTemplates": {
      "kind": "member",
      "locus": "Server",
      "longname": "Accounts.emailTemplates",
      "memberof": "Accounts",
      "name": "emailTemplates",
      "scope": "static",
      "summary": "Options to customize emails sent from the Accounts system."
    },
    "Accounts.forgotPassword": {
      "kind": "function",
      "locus": "Client",
      "longname": "Accounts.forgotPassword",
      "memberof": "Accounts",
      "name": "forgotPassword",
      "options": [
        {
          "description": "<p>The email address to send a password reset link.</p>",
          "name": "email",
          "type": {
            "names": [
              "String"
            ]
          }
        }
      ],
      "params": [
        {
          "name": "options",
          "type": {
            "names": [
              "Object"
            ]
          }
        },
        {
          "description": "<p>Optional callback. Called with no arguments on success, or with a single <code>Error</code> argument on failure.</p>",
          "name": "callback",
          "optional": true,
          "type": {
            "names": [
              "function"
            ]
          }
        }
      ],
      "scope": "static",
      "summary": "Request a forgot password email."
    },
    "Accounts.onCreateUser": {
      "kind": "function",
      "locus": "Server",
      "longname": "Accounts.onCreateUser",
      "memberof": "Accounts",
      "name": "onCreateUser",
      "options": [],
      "params": [
        {
          "description": "<p>Called whenever a new user is created. Return the new user object, or throw an <code>Error</code> to abort the creation.</p>",
          "name": "func",
          "type": {
            "names": [
              "function"
            ]
          }
        }
      ],
      "scope": "static",
      "summary": "Customize new user creation."
    },
    "Accounts.onEmailVerificationLink": {
      "kind": "function",
      "locus": "Client",
      "longname": "Accounts.onEmailVerificationLink",
      "memberof": "Accounts",
      "name": "onEmailVerificationLink",
      "options": [],
      "params": [
        {
          "description": "<p>The function to call. It is given two arguments:</p>\n<ol>\n<li><code>token</code>: An email verification token that can be passed to\n<a href=\"#accounts_verifyemail\"><code>Accounts.verifyEmail</code></a>.</li>\n<li><code>done</code>: A function to call when the email verification UI flow is complete.\nThe normal login process is suspended until this function is called, so\nthat the user can be notified that they are verifying their email before\nbeing logged in.</li>\n</ol>",
          "name": "callback",
          "type": {
            "names": [
              "function"
            ]
          }
        }
      ],
      "scope": "static",
      "summary": "Register a function to call when an email verification link is\nclicked in an email sent by\n[`Accounts.sendVerificationEmail`](#accounts_sendverificationemail).\nThis function should be called in top-level code, not inside\n`Meteor.startup()`."
    },
    "Accounts.onEnrollmentLink": {
      "kind": "function",
      "locus": "Client",
      "longname": "Accounts.onEnrollmentLink",
      "memberof": "Accounts",
      "name": "onEnrollmentLink",
      "options": [],
      "params": [
        {
          "description": "<p>The function to call. It is given two arguments:</p>\n<ol>\n<li><code>token</code>: A password reset token that can be passed to\n<a href=\"#accounts_resetpassword\"><code>Accounts.resetPassword</code></a> to give the newly\nenrolled account a password.</li>\n<li><code>done</code>: A function to call when the enrollment UI flow is complete.\nThe normal login process is suspended until this function is called, so that\nuser A can be enrolled even if user B was logged in.</li>\n</ol>",
          "name": "callback",
          "type": {
            "names": [
              "function"
            ]
          }
        }
      ],
      "scope": "static",
      "summary": "Register a function to call when an account enrollment link is\nclicked in an email sent by\n[`Accounts.sendEnrollmentEmail`](#accounts_sendenrollmentemail).\nThis function should be called in top-level code, not inside\n`Meteor.startup()`."
    },
    "Accounts.onLogin": {
      "kind": "function",
      "locus": "Anywhere",
      "longname": "Accounts.onLogin",
      "memberof": "Accounts",
      "name": "onLogin",
      "options": [],
      "params": [
        {
          "description": "<p>The callback to be called when login is successful.</p>",
          "name": "func",
          "type": {
            "names": [
              "function"
            ]
          }
        }
      ],
      "scope": "static",
      "summary": "Register a callback to be called after a login attempt succeeds."
    },
    "Accounts.onLoginFailure": {
      "kind": "function",
      "locus": "Anywhere",
      "longname": "Accounts.onLoginFailure",
      "memberof": "Accounts",
      "name": "onLoginFailure",
      "options": [],
      "params": [
        {
          "description": "<p>The callback to be called after the login has failed.</p>",
          "name": "func",
          "type": {
            "names": [
              "function"
            ]
          }
        }
      ],
      "scope": "static",
      "summary": "Register a callback to be called after a login attempt fails."
    },
    "Accounts.onResetPasswordLink": {
      "kind": "function",
      "locus": "Client",
      "longname": "Accounts.onResetPasswordLink",
      "memberof": "Accounts",
      "name": "onResetPasswordLink",
      "options": [],
      "params": [
        {
          "description": "<p>The function to call. It is given two arguments:</p>\n<ol>\n<li><code>token</code>: A password reset token that can be passed to\n<a href=\"#accounts_resetpassword\"><code>Accounts.resetPassword</code></a>.</li>\n<li><code>done</code>: A function to call when the password reset UI flow is complete. The normal\nlogin process is suspended until this function is called, so that the\npassword for user A can be reset even if user B was logged in.</li>\n</ol>",
          "name": "callback",
          "type": {
            "names": [
              "function"
            ]
          }
        }
      ],
      "scope": "static",
      "summary": "Register a function to call when a reset password link is clicked\nin an email sent by\n[`Accounts.sendResetPasswordEmail`](#accounts_sendresetpasswordemail).\nThis function should be called in top-level code, not inside\n`Meteor.startup()`."
    },
    "Accounts.resetPassword": {
      "kind": "function",
      "locus": "Client",
      "longname": "Accounts.resetPassword",
      "memberof": "Accounts",
      "name": "resetPassword",
      "options": [],
      "params": [
        {
          "description": "<p>The token retrieved from the reset password URL.</p>",
          "name": "token",
          "type": {
            "names": [
              "String"
            ]
          }
        },
        {
          "description": "<p>A new password for the user. This is <strong>not</strong> sent in plain text over the wire.</p>",
          "name": "newPassword",
          "type": {
            "names": [
              "String"
            ]
          }
        },
        {
          "description": "<p>Optional callback. Called with no arguments on success, or with a single <code>Error</code> argument on failure.</p>",
          "name": "callback",
          "optional": true,
          "type": {
            "names": [
              "function"
            ]
          }
        }
      ],
      "scope": "static",
      "summary": "Reset the password for a user using a token received in email. Logs the user in afterwards."
    },
    "Accounts.sendEnrollmentEmail": {
      "kind": "function",
      "locus": "Server",
      "longname": "Accounts.sendEnrollmentEmail",
      "memberof": "Accounts",
      "name": "sendEnrollmentEmail",
      "options": [],
      "params": [
        {
          "description": "<p>The id of the user to send email to.</p>",
          "name": "userId",
          "type": {
            "names": [
              "String"
            ]
          }
        },
        {
          "description": "<p>Optional. Which address of the user's to send the email to. This address must be in the user's <code>emails</code> list. Defaults to the first email in the list.</p>",
          "name": "email",
          "optional": true,
          "type": {
            "names": [
              "String"
            ]
          }
        }
      ],
      "scope": "static",
      "summary": "Send an email with a link the user can use to set their initial password."
    },
    "Accounts.sendResetPasswordEmail": {
      "kind": "function",
      "locus": "Server",
      "longname": "Accounts.sendResetPasswordEmail",
      "memberof": "Accounts",
      "name": "sendResetPasswordEmail",
      "options": [],
      "params": [
        {
          "description": "<p>The id of the user to send email to.</p>",
          "name": "userId",
          "type": {
            "names": [
              "String"
            ]
          }
        },
        {
          "description": "<p>Optional. Which address of the user's to send the email to. This address must be in the user's <code>emails</code> list. Defaults to the first email in the list.</p>",
          "name": "email",
          "optional": true,
          "type": {
            "names": [
              "String"
            ]
          }
        }
      ],
      "scope": "static",
      "summary": "Send an email with a link the user can use to reset their password."
    },
    "Accounts.sendVerificationEmail": {
      "kind": "function",
      "locus": "Server",
      "longname": "Accounts.sendVerificationEmail",
      "memberof": "Accounts",
      "name": "sendVerificationEmail",
      "options": [],
      "params": [
        {
          "description": "<p>The id of the user to send email to.</p>",
          "name": "userId",
          "type": {
            "names": [
              "String"
            ]
          }
        },
        {
          "description": "<p>Optional. Which address of the user's to send the email to. This address must be in the user's <code>emails</code> list. Defaults to the first unverified email in the list.</p>",
          "name": "email",
          "optional": true,
          "type": {
            "names": [
              "String"
            ]
          }
        }
      ],
      "scope": "static",
      "summary": "Send an email with a link the user can use verify their email address."
    },
    "Accounts.setPassword": {
      "kind": "function",
      "locus": "Server",
      "longname": "Accounts.setPassword",
      "memberof": "Accounts",
      "name": "setPassword",
      "options": [],
      "params": [
        {
          "description": "<p>The id of the user to update.</p>",
          "name": "userId",
          "type": {
            "names": [
              "String"
            ]
          }
        },
        {
          "description": "<p>A new password for the user.</p>",
          "name": "newPassword",
          "type": {
            "names": [
              "String"
            ]
          }
        }
      ],
      "scope": "static",
      "summary": "Forcibly change the password for a user."
    },
    "Accounts.ui": {
      "kind": "namespace",
      "longname": "Accounts.ui",
      "memberof": "Accounts",
      "name": "ui",
      "scope": "static",
      "summary": "Accounts UI"
    },
    "Accounts.ui.config": {
      "kind": "function",
      "locus": "Client",
      "longname": "Accounts.ui.config",
      "memberof": "Accounts.ui",
      "name": "config",
      "options": [
        {
          "description": "<p>Which <a href=\"#requestpermissions\">permissions</a> to request from the user for each external service.</p>",
          "name": "requestPermissions",
          "type": {
            "names": [
              "Object"
            ]
          }
        },
        {
          "description": "<p>To ask the user for permission to act on their behalf when offline, map the relevant external service to <code>true</code>. Currently only supported with Google. See <a href=\"#meteor_loginwithexternalservice\">Meteor.loginWithExternalService</a> for more details.</p>",
          "name": "requestOfflineToken",
          "type": {
            "names": [
              "Object"
            ]
          }
        },
        {
          "description": "<p>If true, forces the user to approve the app's permissions, even if previously approved. Currently only supported with Google.</p>",
          "name": "forceApprovalPrompt",
          "type": {
            "names": [
              "Object"
            ]
          }
        },
        {
          "description": "<p>Which fields to display in the user creation form. One of '<code>USERNAME_AND_EMAIL</code>', '<code>USERNAME_AND_OPTIONAL_EMAIL</code>', '<code>USERNAME_ONLY</code>', or '<code>EMAIL_ONLY</code>' (default).</p>",
          "name": "passwordSignupFields",
          "type": {
            "names": [
              "String"
            ]
          }
        }
      ],
      "params": [
        {
          "name": "options",
          "type": {
            "names": [
              "Object"
            ]
          }
        }
      ],
      "scope": "static",
      "summary": "Configure the behavior of [`{{> loginButtons}}`](#accountsui)."
    },
    "Accounts.validateLoginAttempt": {
      "kind": "function",
      "locus": "Server",
      "longname": "Accounts.validateLoginAttempt",
      "memberof": "Accounts",
      "name": "validateLoginAttempt",
      "options": [],
      "params": [
        {
          "description": "<p>Called whenever a login is attempted (either successful or unsuccessful).  A login can be aborted by returning a falsy value or throwing an exception.</p>",
          "name": "func",
          "type": {
            "names": [
              "function"
            ]
          }
        }
      ],
      "scope": "static",
      "summary": "Validate login attempts."
    },
    "Accounts.validateNewUser": {
      "kind": "function",
      "locus": "Server",
      "longname": "Accounts.validateNewUser",
      "memberof": "Accounts",
      "name": "validateNewUser",
      "options": [],
      "params": [
        {
          "description": "<p>Called whenever a new user is created. Takes the new user object, and returns true to allow the creation or false to abort.</p>",
          "name": "func",
          "type": {
            "names": [
              "function"
            ]
          }
        }
      ],
      "scope": "static",
      "summary": "Set restrictions on new user creation."
    },
    "Accounts.verifyEmail": {
      "kind": "function",
      "locus": "Client",
      "longname": "Accounts.verifyEmail",
      "memberof": "Accounts",
      "name": "verifyEmail",
      "options": [],
      "params": [
        {
          "description": "<p>The token retrieved from the verification URL.</p>",
          "name": "token",
          "type": {
            "names": [
              "String"
            ]
          }
        },
        {
          "description": "<p>Optional callback. Called with no arguments on success, or with a single <code>Error</code> argument on failure.</p>",
          "name": "callback",
          "optional": true,
          "type": {
            "names": [
              "function"
            ]
          }
        }
      ],
      "scope": "static",
      "summary": "Marks the user's email address as verified. Logs the user in afterwards."
    },
    "App": {
      "kind": "namespace",
      "longname": "App",
      "name": "App",
      "scope": "global",
      "summary": "The App configuration object in mobile-config.js"
    },
    "App.accessRule": {
      "kind": "function",
      "longname": "App.accessRule",
      "memberof": "App",
      "name": "accessRule",
      "options": [
        {
          "description": "<p>Set to true if the matching URL\nshould be handled externally (e.g. phone app or email client on Android).</p>",
          "name": "launchExternal",
          "type": {
            "names": [
              "Boolean"
            ]
          }
        }
      ],
      "params": [
        {
          "description": "<p>The pattern defining affected domains or URLs.</p>",
          "name": "domainRule",
          "type": {
            "names": [
              "String"
            ]
          }
        },
        {
          "name": "options",
          "optional": true,
          "type": {
            "names": [
              "Object"
            ]
          }
        }
      ],
      "scope": "static",
      "summary": "Set a new access rule based on origin domain for your app.\nBy default your application has a limited list of servers it can contact.\nUse this method to extend this list.\n\nDefault access rules:\n\n- `tel:*`, `geo:*`, `mailto:*`, `sms:*`, `market:*` are allowed and\n  launch externally (phone app, or an email client on Android)\n- `gap:*`, `cdv:*`, `file:` are allowed (protocols required to access\n  local file-system)\n- `http://meteor.local/*` is allowed (a domain Meteor uses to access\n  app's assets)\n- The domain of the server passed to the build process (or local ip\n  address in the development mode) is used to be able to contact the\n  Meteor app server.\n\nRead more about domain patterns in [Cordova\ndocs](http://cordova.apache.org/docs/en/4.0.0/guide_appdev_whitelist_index.md.html).\n\nStarting with Meteor 1.0.4 access rule for all domains and protocols\n(`<access origin=\"*\"/>`) is no longer set by default due to\n[certain kind of possible\nattacks](http://cordova.apache.org/announcements/2014/08/04/android-351.html)."
    },
    "App.configurePlugin": {
      "kind": "function",
      "longname": "App.configurePlugin",
      "memberof": "App",
      "name": "configurePlugin",
      "options": [],
      "params": [
        {
          "description": "<p>The identifier of the plugin you want to\nconfigure.</p>",
          "name": "pluginName",
          "type": {
            "names": [
              "String"
            ]
          }
        },
        {
          "description": "<p>A set of key-value pairs which will be passed\nat build-time to configure the specified plugin.</p>",
          "name": "config",
          "type": {
            "names": [
              "Object"
            ]
          }
        }
      ],
      "scope": "static",
      "summary": "Set the build-time configuration for a Phonegap plugin."
    },
    "App.icons": {
      "kind": "function",
      "longname": "App.icons",
      "memberof": "App",
      "name": "icons",
      "options": [],
      "params": [
        {
          "description": "<p>An Object where the keys are different\ndevices and screen sizes, and values are image paths\nrelative to the project root directory.</p>\n<p>Valid key values:</p>\n<ul>\n<li><code>iphone</code></li>\n<li><code>iphone_2x</code></li>\n<li><code>iphone_3x</code></li>\n<li><code>ipad</code></li>\n<li><code>ipad_2x</code></li>\n<li><code>android_ldpi</code></li>\n<li><code>android_mdpi</code></li>\n<li><code>android_hdpi</code></li>\n<li><code>android_xhdpi</code></li>\n</ul>",
          "name": "icons",
          "type": {
            "names": [
              "Object"
            ]
          }
        }
      ],
      "scope": "static",
      "summary": "Set the icons for your mobile app."
    },
    "App.info": {
      "kind": "function",
      "longname": "App.info",
      "memberof": "App",
      "name": "info",
      "options": [
        {
          "description": "<p>Each of the options correspond to a key in the app's core configuration\nas described in the <a href=\"http://docs.phonegap.com/en/3.5.0/config_ref_index.md.html#The%20config.xml%20File_core_configuration_elements\">PhoneGap documentation</a>.</p>",
          "name": "id, version, name, description, author, email, website",
          "optional": true,
          "type": {
            "names": [
              "String"
            ]
          }
        }
      ],
      "params": [
        {
          "name": "options",
          "type": {
            "names": [
              "Object"
            ]
          }
        }
      ],
      "scope": "static",
      "summary": "Set your mobile app's core configuration information."
    },
    "App.launchScreens": {
      "kind": "function",
      "longname": "App.launchScreens",
      "memberof": "App",
      "name": "launchScreens",
      "options": [],
      "params": [
        {
          "description": "<p>A dictionary where keys are different\ndevices, screen sizes, and orientations, and the values are image paths\nrelative to the project root directory.</p>\n<p>For Android, launch screen images should\nbe special &quot;Nine-patch&quot; image files that specify how they should be\nstretched. See the <a href=\"https://developer.android.com/guide/topics/graphics/2d-graphics.html#nine-patch\">Android docs</a>.</p>\n<p>Valid key values:</p>\n<ul>\n<li><code>iphone</code></li>\n<li><code>iphone_2x</code></li>\n<li><code>iphone5</code></li>\n<li><code>iphone6</code></li>\n<li><code>iphone6p_portrait</code></li>\n<li><code>iphone6p_landscape</code></li>\n<li><code>ipad_portrait</code></li>\n<li><code>ipad_portrait_2x</code></li>\n<li><code>ipad_landscape</code></li>\n<li><code>ipad_landscape_2x</code></li>\n<li><code>android_ldpi_portrait</code></li>\n<li><code>android_ldpi_landscape</code></li>\n<li><code>android_mdpi_portrait</code></li>\n<li><code>android_mdpi_landscape</code></li>\n<li><code>android_hdpi_portrait</code></li>\n<li><code>android_hdpi_landscape</code></li>\n<li><code>android_xhdpi_portrait</code></li>\n<li><code>android_xhdpi_landscape</code></li>\n</ul>",
          "name": "launchScreens",
          "type": {
            "names": [
              "Object"
            ]
          }
        }
      ],
      "scope": "static",
      "summary": "Set the launch screen images for your mobile app."
    },
    "App.setPreference": {
      "kind": "function",
      "longname": "App.setPreference",
      "memberof": "App",
      "name": "setPreference",
      "options": [],
      "params": [
        {
          "description": "<p>A preference name supported by Phonegap's\n<code>config.xml</code>.</p>",
          "name": "name",
          "type": {
            "names": [
              "String"
            ]
          }
        },
        {
          "description": "<p>The value for that preference.</p>",
          "name": "value",
          "type": {
            "names": [
              "String"
            ]
          }
        }
      ],
      "scope": "static",
      "summary": "Add a preference for your build as described in the\n[PhoneGap documentation](http://docs.phonegap.com/en/3.5.0/config_ref_index.md.html#The%20config.xml%20File_global_preferences)."
    },
    "Assets": {
      "kind": "namespace",
      "longname": "Assets",
      "name": "Assets",
      "summary": "The namespace for Assets functions, lives in the bundler."
    },
    "Assets.getBinary": {
      "kind": "function",
      "locus": "Server",
      "longname": "Assets.getBinary",
      "memberof": "Assets",
      "name": "getBinary",
      "options": [],
      "params": [
        {
          "description": "<p>The path of the asset, relative to the application's <code>private</code> subdirectory.</p>",
          "name": "assetPath",
          "type": {
            "names": [
              "String"
            ]
          }
        },
        {
          "description": "<p>Optional callback, which is called asynchronously with the error or result after the function is complete. If not provided, the function runs synchronously.</p>",
          "name": "asyncCallback",
          "optional": true,
          "type": {
            "names": [
              "function"
            ]
          }
        }
      ],
      "scope": "static",
      "summary": "Retrieve the contents of the static server asset as an [EJSON Binary](#ejson_new_binary)."
    },
    "Assets.getText": {
      "kind": "function",
      "locus": "Server",
      "longname": "Assets.getText",
      "memberof": "Assets",
      "name": "getText",
      "options": [],
      "params": [
        {
          "description": "<p>The path of the asset, relative to the application's <code>private</code> subdirectory.</p>",
          "name": "assetPath",
          "type": {
            "names": [
              "String"
            ]
          }
        },
        {
          "description": "<p>Optional callback, which is called asynchronously with the error or result after the function is complete. If not provided, the function runs synchronously.</p>",
          "name": "asyncCallback",
          "optional": true,
          "type": {
            "names": [
              "function"
            ]
          }
        }
      ],
      "scope": "static",
      "summary": "Retrieve the contents of the static server asset as a UTF8-encoded string."
    },
    "Blaze": {
      "kind": "namespace",
      "longname": "Blaze",
      "name": "Blaze",
      "summary": "The namespace for all Blaze-related methods and classes."
    },
    "Blaze.Each": {
      "kind": "function",
      "locus": "Client",
      "longname": "Blaze.Each",
      "memberof": "Blaze",
      "name": "Each",
      "options": [],
      "params": [
        {
          "description": "<p>A function to reactively re-run.  The function may return a Cursor, an array, null, or undefined.</p>",
          "name": "argFunc",
          "type": {
            "names": [
              "function"
            ]
          }
        },
        {
          "description": "<p>A Function that returns <a href=\"#renderable_content\"><em>renderable content</em></a>.</p>",
          "name": "contentFunc",
          "type": {
            "names": [
              "function"
            ]
          }
        },
        {
          "description": "<p>Optional.  A Function that returns <a href=\"#renderable_content\"><em>renderable content</em></a> to display in the case when there are no items to display.</p>",
          "name": "elseFunc",
          "optional": true,
          "type": {
            "names": [
              "function"
            ]
          }
        }
      ],
      "scope": "static",
      "summary": "Constructs a View that renders `contentFunc` for each item in a sequence."
    },
    "Blaze.If": {
      "kind": "function",
      "locus": "Client",
      "longname": "Blaze.If",
      "memberof": "Blaze",
      "name": "If",
      "options": [],
      "params": [
        {
          "description": "<p>A function to reactively re-run.  Whether the result is truthy or falsy determines whether <code>contentFunc</code> or <code>elseFunc</code> is shown.  An empty array is considered falsy.</p>",
          "name": "conditionFunc",
          "type": {
            "names": [
              "function"
            ]
          }
        },
        {
          "description": "<p>A Function that returns <a href=\"#renderable_content\"><em>renderable content</em></a>.</p>",
          "name": "contentFunc",
          "type": {
            "names": [
              "function"
            ]
          }
        },
        {
          "description": "<p>Optional.  A Function that returns <a href=\"#renderable_content\"><em>renderable content</em></a>.  If no <code>elseFunc</code> is supplied, no content is shown in the &quot;else&quot; case.</p>",
          "name": "elseFunc",
          "optional": true,
          "type": {
            "names": [
              "function"
            ]
          }
        }
      ],
      "scope": "static",
      "summary": "Constructs a View that renders content conditionally."
    },
    "Blaze.Template": {
      "kind": "class",
      "locus": "Client",
      "longname": "Blaze.Template",
      "memberof": "Blaze",
      "name": "Template",
      "options": [],
      "params": [
        {
          "description": "<p>Optional.  A name for Views constructed by this Template.  See <a href=\"#view_name\"><code>view.name</code></a>.</p>",
          "name": "viewName",
          "optional": true,
          "type": {
            "names": [
              "String"
            ]
          }
        },
        {
          "description": "<p>A function that returns <a href=\"#renderable_content\"><em>renderable content</em></a>.  This function is used as the <code>renderFunction</code> for Views constructed by this Template.</p>",
          "name": "renderFunction",
          "type": {
            "names": [
              "function"
            ]
          }
        }
      ],
      "scope": "static",
      "summary": "Constructor for a Template, which is used to construct Views with particular name and content."
    },
    "Blaze.TemplateInstance": {
      "instancename": "template",
      "kind": "class",
      "longname": "Blaze.TemplateInstance",
      "memberof": "Blaze",
      "name": "TemplateInstance",
      "options": [],
      "params": [
        {
          "name": "view",
          "type": {
            "names": [
              "Blaze.View"
            ]
          }
        }
      ],
      "scope": "static",
      "summary": "The class for template instances"
    },
    "Blaze.TemplateInstance#$": {
      "kind": "function",
      "locus": "Client",
      "longname": "Blaze.TemplateInstance#$",
      "memberof": "Blaze.TemplateInstance",
      "name": "$",
      "options": [],
      "params": [
        {
          "description": "<p>The CSS selector to match, scoped to the template contents.</p>",
          "name": "selector",
          "type": {
            "names": [
              "String"
            ]
          }
        }
      ],
      "returns": [
        {
          "type": {
            "names": [
              "Array.<DOMNode>"
            ]
          }
        }
      ],
      "scope": "instance",
      "summary": "Find all elements matching `selector` in this template instance, and return them as a JQuery object."
    },
    "Blaze.TemplateInstance#autorun": {
      "kind": "function",
      "locus": "Client",
      "longname": "Blaze.TemplateInstance#autorun",
      "memberof": "Blaze.TemplateInstance",
      "name": "autorun",
      "options": [],
      "params": [
        {
          "description": "<p>The function to run. It receives one argument: a Tracker.Computation object.</p>",
          "name": "runFunc",
          "type": {
            "names": [
              "function"
            ]
          }
        }
      ],
      "scope": "instance",
      "summary": "A version of [Tracker.autorun](#tracker_autorun) that is stopped when the template is destroyed."
    },
    "Blaze.TemplateInstance#data": {
      "kind": "member",
      "locus": "Client",
      "longname": "Blaze.TemplateInstance#data",
      "memberof": "Blaze.TemplateInstance",
      "name": "data",
      "scope": "instance",
      "summary": "The data context of this instance's latest invocation."
    },
    "Blaze.TemplateInstance#find": {
      "kind": "function",
      "locus": "Client",
      "longname": "Blaze.TemplateInstance#find",
      "memberof": "Blaze.TemplateInstance",
      "name": "find",
      "options": [],
      "params": [
        {
          "description": "<p>The CSS selector to match, scoped to the template contents.</p>",
          "name": "selector",
          "type": {
            "names": [
              "String"
            ]
          }
        }
      ],
      "returns": [
        {
          "type": {
            "names": [
              "DOMElement"
            ]
          }
        }
      ],
      "scope": "instance",
      "summary": "Find one element matching `selector` in this template instance."
    },
    "Blaze.TemplateInstance#findAll": {
      "kind": "function",
      "locus": "Client",
      "longname": "Blaze.TemplateInstance#findAll",
      "memberof": "Blaze.TemplateInstance",
      "name": "findAll",
      "options": [],
      "params": [
        {
          "description": "<p>The CSS selector to match, scoped to the template contents.</p>",
          "name": "selector",
          "type": {
            "names": [
              "String"
            ]
          }
        }
      ],
      "returns": [
        {
          "type": {
            "names": [
              "Array.<DOMElement>"
            ]
          }
        }
      ],
      "scope": "instance",
      "summary": "Find all elements matching `selector` in this template instance."
    },
    "Blaze.TemplateInstance#firstNode": {
      "kind": "member",
      "locus": "Client",
      "longname": "Blaze.TemplateInstance#firstNode",
      "memberof": "Blaze.TemplateInstance",
      "name": "firstNode",
      "scope": "instance",
      "summary": "The first top-level DOM node in this template instance.",
      "type": {
        "names": [
          "DOMNode"
        ]
      }
    },
    "Blaze.TemplateInstance#lastNode": {
      "kind": "member",
      "locus": "Client",
      "longname": "Blaze.TemplateInstance#lastNode",
      "memberof": "Blaze.TemplateInstance",
      "name": "lastNode",
      "scope": "instance",
      "summary": "The last top-level DOM node in this template instance.",
      "type": {
        "names": [
          "DOMNode"
        ]
      }
    },
    "Blaze.TemplateInstance#subscribe": {
      "kind": "function",
      "locus": "Client",
      "longname": "Blaze.TemplateInstance#subscribe",
      "memberof": "Blaze.TemplateInstance",
      "name": "subscribe",
      "options": [],
      "params": [
        {
          "description": "<p>Name of the subscription.  Matches the name of the\nserver's <code>publish()</code> call.</p>",
          "name": "name",
          "type": {
            "names": [
              "String"
            ]
          }
        },
        {
          "description": "<p>Optional arguments passed to publisher function\non server.</p>",
          "name": "arg1, arg2...",
          "optional": true,
          "type": {
            "names": [
              "Any"
            ]
          }
        },
        {
          "description": "<p>Optional. May include <code>onStop</code> and\n<code>onReady</code> callbacks. If a function is passed instead of an object, it is\ninterpreted as an <code>onReady</code> callback.</p>",
          "name": "callbacks",
          "optional": true,
          "type": {
            "names": [
              "function",
              "Object"
            ]
          }
        }
      ],
      "returns": [
        {
          "description": "<p>The subscription handle to the newly made\nsubscription. Call <code>handle.stop()</code> to manually stop the subscription, or\n<code>handle.ready()</code> to find out if this particular subscription has loaded all\nof its inital data.</p>",
          "type": {
            "names": [
              "SubscriptionHandle"
            ]
          }
        }
      ],
      "scope": "instance",
      "summary": "A version of [Meteor.subscribe](#meteor_subscribe) that is stopped\nwhen the template is destroyed."
    },
    "Blaze.TemplateInstance#subscriptionsReady": {
      "kind": "function",
      "longname": "Blaze.TemplateInstance#subscriptionsReady",
      "memberof": "Blaze.TemplateInstance",
      "name": "subscriptionsReady",
      "options": [],
      "params": [],
      "returns": [
        {
          "description": "<p>True if all subscriptions on this template instance are\nready.</p>",
          "type": {
            "names": [
              "Boolean"
            ]
          }
        }
      ],
      "scope": "instance",
      "summary": "A reactive function that returns true when all of the subscriptions\ncalled with [this.subscribe](#TemplateInstance-subscribe) are ready."
    },
    "Blaze.TemplateInstance#view": {
      "kind": "member",
      "locus": "Client",
      "longname": "Blaze.TemplateInstance#view",
      "memberof": "Blaze.TemplateInstance",
      "name": "view",
      "scope": "instance",
      "summary": "The [View](#blaze_view) object for this invocation of the template.",
      "type": {
        "names": [
          "Blaze.View"
        ]
      }
    },
    "Blaze.Unless": {
      "kind": "function",
      "locus": "Client",
      "longname": "Blaze.Unless",
      "memberof": "Blaze",
      "name": "Unless",
      "options": [],
      "params": [
        {
          "description": "<p>A function to reactively re-run.  If the result is falsy, <code>contentFunc</code> is shown, otherwise <code>elseFunc</code> is shown.  An empty array is considered falsy.</p>",
          "name": "conditionFunc",
          "type": {
            "names": [
              "function"
            ]
          }
        },
        {
          "description": "<p>A Function that returns <a href=\"#renderable_content\"><em>renderable content</em></a>.</p>",
          "name": "contentFunc",
          "type": {
            "names": [
              "function"
            ]
          }
        },
        {
          "description": "<p>Optional.  A Function that returns <a href=\"#renderable_content\"><em>renderable content</em></a>.  If no <code>elseFunc</code> is supplied, no content is shown in the &quot;else&quot; case.</p>",
          "name": "elseFunc",
          "optional": true,
          "type": {
            "names": [
              "function"
            ]
          }
        }
      ],
      "scope": "static",
      "summary": "An inverted [`Blaze.If`](#blaze_if)."
    },
    "Blaze.View": {
      "kind": "class",
      "locus": "Client",
      "longname": "Blaze.View",
      "memberof": "Blaze",
      "name": "View",
      "options": [],
      "params": [
        {
          "description": "<p>Optional.  A name for this type of View.  See <a href=\"#view_name\"><code>view.name</code></a>.</p>",
          "name": "name",
          "optional": true,
          "type": {
            "names": [
              "String"
            ]
          }
        },
        {
          "description": "<p>A function that returns <a href=\"#renderable_content\"><em>renderable content</em></a>.  In this function, <code>this</code> is bound to the View.</p>",
          "name": "renderFunction",
          "type": {
            "names": [
              "function"
            ]
          }
        }
      ],
      "scope": "static",
      "summary": "Constructor for a View, which represents a reactive region of DOM."
    },
    "Blaze.With": {
      "kind": "function",
      "locus": "Client",
      "longname": "Blaze.With",
      "memberof": "Blaze",
      "name": "With",
      "options": [],
      "params": [
        {
          "description": "<p>An object to use as the data context, or a function returning such an object.  If a function is provided, it will be reactively re-run.</p>",
          "name": "data",
          "type": {
            "names": [
              "Object",
              "function"
            ]
          }
        },
        {
          "description": "<p>A Function that returns <a href=\"#renderable_content\"><em>renderable content</em></a>.</p>",
          "name": "contentFunc",
          "type": {
            "names": [
              "function"
            ]
          }
        }
      ],
      "scope": "static",
      "summary": "Constructs a View that renders content with a data context."
    },
    "Blaze.currentView": {
      "kind": "member",
      "locus": "Client",
      "longname": "Blaze.currentView",
      "memberof": "Blaze",
      "name": "currentView",
      "scope": "static",
      "summary": "The View corresponding to the current template helper, event handler, callback, or autorun.  If there isn't one, `null`.",
      "type": {
        "names": [
          "Blaze.View"
        ]
      }
    },
    "Blaze.getData": {
      "kind": "function",
      "locus": "Client",
      "longname": "Blaze.getData",
      "memberof": "Blaze",
      "name": "getData",
      "options": [],
      "params": [
        {
          "description": "<p>Optional.  An element that was rendered by a Meteor, or a View.</p>",
          "name": "elementOrView",
          "optional": true,
          "type": {
            "names": [
              "DOMElement",
              "Blaze.View"
            ]
          }
        }
      ],
      "scope": "static",
      "summary": "Returns the current data context, or the data context that was used when rendering a particular DOM element or View from a Meteor template."
    },
    "Blaze.getView": {
      "kind": "function",
      "locus": "Client",
      "longname": "Blaze.getView",
      "memberof": "Blaze",
      "name": "getView",
      "options": [],
      "params": [
        {
          "description": "<p>Optional.  If specified, the View enclosing <code>element</code> is returned.</p>",
          "name": "element",
          "optional": true,
          "type": {
            "names": [
              "DOMElement"
            ]
          }
        }
      ],
      "scope": "static",
      "summary": "Gets either the current View, or the View enclosing the given DOM element."
    },
    "Blaze.isTemplate": {
      "kind": "function",
      "locus": "Client",
      "longname": "Blaze.isTemplate",
      "memberof": "Blaze",
      "name": "isTemplate",
      "options": [],
      "params": [
        {
          "description": "<p>The value to test.</p>",
          "name": "value",
          "type": {
            "names": [
              "Any"
            ]
          }
        }
      ],
      "scope": "static",
      "summary": "Returns true if `value` is a template object like `Template.myTemplate`."
    },
    "Blaze.remove": {
      "kind": "function",
      "locus": "Client",
      "longname": "Blaze.remove",
      "memberof": "Blaze",
      "name": "remove",
      "options": [],
      "params": [
        {
          "description": "<p>The return value from <code>Blaze.render</code> or <code>Blaze.renderWithData</code>.</p>",
          "name": "renderedView",
          "type": {
            "names": [
              "Blaze.View"
            ]
          }
        }
      ],
      "scope": "static",
      "summary": "Removes a rendered View from the DOM, stopping all reactive updates and event listeners on it."
    },
    "Blaze.render": {
      "kind": "function",
      "locus": "Client",
      "longname": "Blaze.render",
      "memberof": "Blaze",
      "name": "render",
      "options": [],
      "params": [
        {
          "description": "<p>The template (e.g. <code>Template.myTemplate</code>) or View object to render.  If a template, a View object is <a href=\"#template_constructview\">constructed</a>.  If a View, it must be an unrendered View, which becomes a rendered View and is returned.</p>",
          "name": "templateOrView",
          "type": {
            "names": [
              "Template",
              "Blaze.View"
            ]
          }
        },
        {
          "description": "<p>The node that will be the parent of the rendered template.  It must be an Element node.</p>",
          "name": "parentNode",
          "type": {
            "names": [
              "DOMNode"
            ]
          }
        },
        {
          "description": "<p>Optional. If provided, must be a child of <em>parentNode</em>; the template will be inserted before this node. If not provided, the template will be inserted as the last child of parentNode.</p>",
          "name": "nextNode",
          "optional": true,
          "type": {
            "names": [
              "DOMNode"
            ]
          }
        },
        {
          "description": "<p>Optional. If provided, it will be set as the rendered View's <a href=\"#view_parentview\"><code>parentView</code></a>.</p>",
          "name": "parentView",
          "optional": true,
          "type": {
            "names": [
              "Blaze.View"
            ]
          }
        }
      ],
      "scope": "static",
      "summary": "Renders a template or View to DOM nodes and inserts it into the DOM, returning a rendered [View](#blaze_view) which can be passed to [`Blaze.remove`](#blaze_remove)."
    },
    "Blaze.renderWithData": {
      "kind": "function",
      "locus": "Client",
      "longname": "Blaze.renderWithData",
      "memberof": "Blaze",
      "name": "renderWithData",
      "options": [],
      "params": [
        {
          "description": "<p>The template (e.g. <code>Template.myTemplate</code>) or View object to render.</p>",
          "name": "templateOrView",
          "type": {
            "names": [
              "Template",
              "Blaze.View"
            ]
          }
        },
        {
          "description": "<p>The data context to use, or a function returning a data context.  If a function is provided, it will be reactively re-run.</p>",
          "name": "data",
          "type": {
            "names": [
              "Object",
              "function"
            ]
          }
        },
        {
          "description": "<p>The node that will be the parent of the rendered template.  It must be an Element node.</p>",
          "name": "parentNode",
          "type": {
            "names": [
              "DOMNode"
            ]
          }
        },
        {
          "description": "<p>Optional. If provided, must be a child of <em>parentNode</em>; the template will be inserted before this node. If not provided, the template will be inserted as the last child of parentNode.</p>",
          "name": "nextNode",
          "optional": true,
          "type": {
            "names": [
              "DOMNode"
            ]
          }
        },
        {
          "description": "<p>Optional. If provided, it will be set as the rendered View's <a href=\"#view_parentview\"><code>parentView</code></a>.</p>",
          "name": "parentView",
          "optional": true,
          "type": {
            "names": [
              "Blaze.View"
            ]
          }
        }
      ],
      "scope": "static",
      "summary": "Renders a template or View to DOM nodes with a data context.  Otherwise identical to `Blaze.render`."
    },
    "Blaze.toHTML": {
      "kind": "function",
      "locus": "Client",
      "longname": "Blaze.toHTML",
      "memberof": "Blaze",
      "name": "toHTML",
      "options": [],
      "params": [
        {
          "description": "<p>The template (e.g. <code>Template.myTemplate</code>) or View object from which to generate HTML.</p>",
          "name": "templateOrView",
          "type": {
            "names": [
              "Template",
              "Blaze.View"
            ]
          }
        }
      ],
      "scope": "static",
      "summary": "Renders a template or View to a string of HTML."
    },
    "Blaze.toHTMLWithData": {
      "kind": "function",
      "locus": "Client",
      "longname": "Blaze.toHTMLWithData",
      "memberof": "Blaze",
      "name": "toHTMLWithData",
      "options": [],
      "params": [
        {
          "description": "<p>The template (e.g. <code>Template.myTemplate</code>) or View object from which to generate HTML.</p>",
          "name": "templateOrView",
          "type": {
            "names": [
              "Template",
              "Blaze.View"
            ]
          }
        },
        {
          "description": "<p>The data context to use, or a function returning a data context.</p>",
          "name": "data",
          "type": {
            "names": [
              "Object",
              "function"
            ]
          }
        }
      ],
      "scope": "static",
      "summary": "Renders a template or View to HTML with a data context.  Otherwise identical to `Blaze.toHTML`."
    },
    "CompileStep": {
      "description": "<p>The comments for this class aren't used to generate docs right now.\nThe docs live in the GitHub Wiki at: https://github.com/meteor/meteor/wiki/CompileStep-API-for-Build-Plugin-Source-Handlers</p>",
      "kind": "class",
      "longname": "CompileStep",
      "name": "CompileStep",
      "options": [],
      "params": [],
      "scope": "global",
      "summary": "The object passed into Plugin.registerSourceHandler"
    },
    "CompileStep#addAsset": {
      "kind": "function",
      "longname": "CompileStep#addAsset",
      "memberof": "CompileStep",
      "name": "addAsset",
      "options": [],
      "params": [
        {
          "name": "options",
          "type": {
            "names": [
              "Object"
            ]
          }
        },
        {
          "description": "<p>The path at which to serve the asset.</p>",
          "name": "path",
          "type": {
            "names": [
              "String"
            ]
          }
        },
        {
          "description": "<p>The data that should be placed in\nthe file.</p>",
          "name": "data",
          "type": {
            "names": [
              "Buffer",
              "String"
            ]
          }
        }
      ],
      "scope": "instance",
      "summary": "Add a file to serve as-is to the browser or to include on\nthe browser, depending on the target. On the web, it will be served\nat the exact path requested. For server targets, it can be retrieved\nusing `Assets.getText` or `Assets.getBinary`."
    },
    "CompileStep#addHtml": {
      "kind": "function",
      "longname": "CompileStep#addHtml",
      "memberof": "CompileStep",
      "name": "addHtml",
      "options": [
        {
          "description": "<p>Which section of the document should\nbe appended to. Can only be &quot;head&quot; or &quot;body&quot;.</p>",
          "name": "section",
          "type": {
            "names": [
              "String"
            ]
          }
        },
        {
          "description": "<p>The content to append.</p>",
          "name": "data",
          "type": {
            "names": [
              "String"
            ]
          }
        }
      ],
      "params": [
        {
          "name": "options",
          "type": {
            "names": [
              "Object"
            ]
          }
        }
      ],
      "scope": "instance",
      "summary": "Works in web targets only. Add markup to the `head` or `body`\nsection of the document."
    },
    "CompileStep#addJavaScript": {
      "kind": "function",
      "longname": "CompileStep#addJavaScript",
      "memberof": "CompileStep",
      "name": "addJavaScript",
      "options": [
        {
          "description": "<p>The path at which the JavaScript file\nshould be inserted, may not be honored in case of path conflicts.</p>",
          "name": "path",
          "type": {
            "names": [
              "String"
            ]
          }
        },
        {
          "description": "<p>The code to be added.</p>",
          "name": "data",
          "type": {
            "names": [
              "String"
            ]
          }
        },
        {
          "description": "<p>The path that will be used in\nany error messages generated by this file, e.g. <code>foo.js:4:1: error</code>.</p>",
          "name": "sourcePath",
          "type": {
            "names": [
              "String"
            ]
          }
        }
      ],
      "params": [
        {
          "name": "options",
          "type": {
            "names": [
              "Object"
            ]
          }
        }
      ],
      "scope": "instance",
      "summary": "Add JavaScript code. The code added will only see the\nnamespaces imported by this package as runtime dependencies using\n['api.use'](#PackageAPI-use). If the file being compiled was added\nwith the bare flag, the resulting JavaScript won't be wrapped in a\nclosure."
    },
    "CompileStep#addStylesheet": {
      "kind": "function",
      "longname": "CompileStep#addStylesheet",
      "memberof": "CompileStep",
      "name": "addStylesheet",
      "options": [],
      "params": [
        {
          "name": "options",
          "type": {
            "names": [
              "Object"
            ]
          }
        },
        {
          "description": "<p>The requested path for the added CSS, may not be\nsatisfied if there are path conflicts.</p>",
          "name": "path",
          "type": {
            "names": [
              "String"
            ]
          }
        },
        {
          "description": "<p>The content of the stylesheet that should be\nadded.</p>",
          "name": "data",
          "type": {
            "names": [
              "String"
            ]
          }
        },
        {
          "description": "<p>A stringified JSON sourcemap, in case the\nstylesheet was generated from a different file.</p>",
          "name": "sourceMap",
          "type": {
            "names": [
              "String"
            ]
          }
        }
      ],
      "scope": "instance",
      "summary": "Web targets only. Add a stylesheet to the document."
    },
    "CompileStep#arch": {
      "kind": "member",
      "longname": "CompileStep#arch",
      "memberof": "CompileStep",
      "name": "arch",
      "scope": "instance",
      "summary": "The architecture for which we are building. Can be \"os\",\n\"web.browser\", or \"web.cordova\".",
      "type": {
        "names": [
          "String"
        ]
      }
    },
    "CompileStep#declaredExports": {
      "kind": "member",
      "longname": "CompileStep#declaredExports",
      "memberof": "CompileStep",
      "name": "declaredExports",
      "scope": "instance",
      "summary": "The list of exports that the current package has defined.\nCan be used to treat those symbols differently during compilation.",
      "type": {
        "names": [
          "Object"
        ]
      }
    },
    "CompileStep#error": {
      "kind": "function",
      "longname": "CompileStep#error",
      "memberof": "CompileStep",
      "name": "error",
      "options": [],
      "params": [
        {
          "name": "options",
          "type": {
            "names": [
              "Object"
            ]
          }
        },
        {
          "description": "<p>The error message to display.</p>",
          "name": "message",
          "type": {
            "names": [
              "String"
            ]
          }
        },
        {
          "description": "<p>The path to display in the error message.</p>",
          "name": "sourcePath",
          "optional": true,
          "type": {
            "names": [
              "String"
            ]
          }
        },
        {
          "description": "<p>The line number to display in the error message.</p>",
          "name": "line",
          "type": {
            "names": [
              "Integer"
            ]
          }
        },
        {
          "description": "<p>The function name to display in the error message.</p>",
          "name": "func",
          "type": {
            "names": [
              "String"
            ]
          }
        }
      ],
      "scope": "instance",
      "summary": "Display a build error."
    },
    "CompileStep#fileOptions": {
      "kind": "member",
      "longname": "CompileStep#fileOptions",
      "memberof": "CompileStep",
      "name": "fileOptions",
      "scope": "instance",
      "summary": "Any options passed to \"api.addFiles\".",
      "type": {
        "names": [
          "Object"
        ]
      }
    },
    "CompileStep#fullInputPath": {
      "kind": "member",
      "longname": "CompileStep#fullInputPath",
      "memberof": "CompileStep",
      "name": "fullInputPath",
      "scope": "instance",
      "summary": "The filename and absolute path of the input file.\nPlease don't use this filename to read the file from disk, instead\nuse [compileStep.read](CompileStep-read).",
      "type": {
        "names": [
          "String"
        ]
      }
    },
    "CompileStep#inputPath": {
      "kind": "member",
      "longname": "CompileStep#inputPath",
      "memberof": "CompileStep",
      "name": "inputPath",
      "scope": "instance",
      "summary": "The filename and relative path of the input file.\nPlease don't use this filename to read the file from disk, instead\nuse [compileStep.read](CompileStep-read).",
      "type": {
        "names": [
          "String"
        ]
      }
    },
    "CompileStep#inputSize": {
      "kind": "member",
      "longname": "CompileStep#inputSize",
      "memberof": "CompileStep",
      "name": "inputSize",
      "scope": "instance",
      "summary": "The total number of bytes in the input file.",
      "type": {
        "names": [
          "Integer"
        ]
      }
    },
    "CompileStep#packageName": {
      "kind": "member",
      "longname": "CompileStep#packageName",
      "memberof": "CompileStep",
      "name": "packageName",
      "scope": "instance",
      "summary": "The name of the package in which the file being built exists.",
      "type": {
        "names": [
          "String"
        ]
      }
    },
    "CompileStep#pathForSourceMap": {
      "kind": "member",
      "longname": "CompileStep#pathForSourceMap",
      "memberof": "CompileStep",
      "name": "pathForSourceMap",
      "scope": "instance",
      "summary": "If you are generating a sourcemap for the compiled file, use\nthis path for the original file in the sourcemap.",
      "type": {
        "names": [
          "String"
        ]
      }
    },
    "CompileStep#read": {
      "kind": "function",
      "longname": "CompileStep#read",
      "memberof": "CompileStep",
      "name": "read",
      "options": [],
      "params": [
        {
          "description": "<p>The number of bytes to return.</p>",
          "name": "n",
          "optional": true,
          "type": {
            "names": [
              "Integer"
            ]
          }
        }
      ],
      "returns": [
        {
          "type": {
            "names": [
              "Buffer"
            ]
          }
        }
      ],
      "scope": "instance",
      "summary": "Read from the input file. If `n` is specified, returns the\nnext `n` bytes of the file as a Buffer. XXX not sure if this actually\nreturns a String sometimes..."
    },
    "CompileStep#rootOutputPath": {
      "kind": "member",
      "longname": "CompileStep#rootOutputPath",
      "memberof": "CompileStep",
      "name": "rootOutputPath",
      "scope": "instance",
      "summary": "On web targets, this will be the root URL prepended\nto the paths you pick for your output files. For example,\nit could be \"/packages/my-package\".",
      "type": {
        "names": [
          "String"
        ]
      }
    },
    "Cordova": {
      "kind": "namespace",
      "longname": "Cordova",
      "name": "Cordova",
      "scope": "global",
      "summary": "The Cordova object in package.js."
    },
    "Cordova.depends": {
      "kind": "function",
      "locus": "package.js",
      "longname": "Cordova.depends",
      "memberof": "Cordova",
      "name": "depends",
      "options": [],
      "params": [
        {
          "description": "<p>An object where the keys are plugin\nnames and the values are version numbers or GitHub tarball URLs\nin string form.\nExample:</p>\n<pre class=\"prettyprint source lang-js\"><code>Cordova.depends({\n  &quot;org.apache.cordova.camera&quot;: &quot;0.3.0&quot;\n});</code></pre><p>Alternatively, with a GitHub URL:</p>\n<pre class=\"prettyprint source lang-js\"><code>Cordova.depends({\n  &quot;org.apache.cordova.camera&quot;:\n    &quot;https://github.com/apache/cordova-plugin-camera/tarball/d84b875c&quot;\n});</code></pre>",
          "name": "dependencies",
          "type": {
            "names": [
              "Object"
            ]
          }
        }
      ],
      "scope": "static",
      "summary": "Specify which [Cordova / PhoneGap](http://cordova.apache.org/)\nplugins your Meteor package depends on.\n\nPlugins are installed from\n[plugins.cordova.io](http://plugins.cordova.io/), so the plugins and\nversions specified must exist there. Alternatively, the version\ncan be replaced with a GitHub tarball URL as described in the\n[Cordova / PhoneGap](https://github.com/meteor/meteor/wiki/Meteor-Cordova-Phonegap-integration#meteor-packages-with-cordovaphonegap-dependencies)\npage of the Meteor wiki on GitHub."
    },
    "DDP": {
      "kind": "namespace",
      "longname": "DDP",
      "name": "DDP",
      "summary": "The namespace for DDP-related methods."
    },
    "DDP.connect": {
      "kind": "function",
      "locus": "Anywhere",
      "longname": "DDP.connect",
      "memberof": "DDP",
      "name": "connect",
      "options": [],
      "params": [
        {
          "description": "<p>The URL of another Meteor application.</p>",
          "name": "url",
          "type": {
            "names": [
              "String"
            ]
          }
        }
      ],
      "scope": "static",
      "summary": "Connect to the server of a different Meteor application to subscribe to its document sets and invoke its remote methods."
    },
    "EJSON": {
      "kind": "namespace",
      "longname": "EJSON",
      "name": "EJSON",
      "scope": "global",
      "summary": "Namespace for EJSON functions"
    },
    "EJSON.CustomType": {
      "instancename": "customType",
      "kind": "class",
      "longname": "EJSON.CustomType",
      "memberof": "EJSON",
      "name": "CustomType",
      "options": [],
      "params": [],
      "scope": "static",
      "summary": "The interface that a class must satisfy to be able to become an\nEJSON custom type via EJSON.addType."
    },
    "EJSON.CustomType#clone": {
      "kind": "function",
      "locus": "Anywhere",
      "longname": "EJSON.CustomType#clone",
      "memberof": "EJSON.CustomType",
      "name": "clone",
      "options": [],
      "params": [],
      "scope": "instance",
      "summary": "Return a value `r` such that `this.equals(r)` is true, and modifications to `r` do not affect `this` and vice versa."
    },
    "EJSON.CustomType#equals": {
      "kind": "function",
      "locus": "Anywhere",
      "longname": "EJSON.CustomType#equals",
      "memberof": "EJSON.CustomType",
      "name": "equals",
      "options": [],
      "params": [
        {
          "description": "<p>Another object to compare this to.</p>",
          "name": "other",
          "type": {
            "names": [
              "Object"
            ]
          }
        }
      ],
      "scope": "instance",
      "summary": "Return `true` if `other` has a value equal to `this`; `false` otherwise."
    },
    "EJSON.CustomType#toJSONValue": {
      "kind": "function",
      "locus": "Anywhere",
      "longname": "EJSON.CustomType#toJSONValue",
      "memberof": "EJSON.CustomType",
      "name": "toJSONValue",
      "options": [],
      "params": [],
      "scope": "instance",
      "summary": "Serialize this instance into a JSON-compatible value."
    },
    "EJSON.CustomType#typeName": {
      "kind": "function",
      "locus": "Anywhere",
      "longname": "EJSON.CustomType#typeName",
      "memberof": "EJSON.CustomType",
      "name": "typeName",
      "options": [],
      "params": [],
      "scope": "instance",
      "summary": "Return the tag used to identify this type.  This must match the tag used to register this type with [`EJSON.addType`](#ejson_add_type)."
    },
    "EJSON.addType": {
      "kind": "function",
      "locus": "Anywhere",
      "longname": "EJSON.addType",
      "memberof": "EJSON",
      "name": "addType",
      "options": [],
      "params": [
        {
          "description": "<p>A tag for your custom type; must be unique among custom data types defined in your project, and must match the result of your type's <code>typeName</code> method.</p>",
          "name": "name",
          "type": {
            "names": [
              "String"
            ]
          }
        },
        {
          "description": "<p>A function that deserializes a JSON-compatible value into an instance of your type.  This should match the serialization performed by your type's <code>toJSONValue</code> method.</p>",
          "name": "factory",
          "type": {
            "names": [
              "function"
            ]
          }
        }
      ],
      "scope": "static",
      "summary": "Add a custom datatype to EJSON."
    },
    "EJSON.clone": {
      "kind": "function",
      "locus": "Anywhere",
      "longname": "EJSON.clone",
      "memberof": "EJSON",
      "name": "clone",
      "options": [],
      "params": [
        {
          "description": "<p>A value to copy.</p>",
          "name": "val",
          "type": {
            "names": [
              "EJSON"
            ]
          }
        }
      ],
      "scope": "static",
      "summary": "Return a deep copy of `val`."
    },
    "EJSON.equals": {
      "kind": "function",
      "locus": "Anywhere",
      "longname": "EJSON.equals",
      "memberof": "EJSON",
      "name": "equals",
      "options": [
        {
          "description": "<p>Compare in key sensitive order, if supported by the JavaScript implementation.  For example, <code>{a: 1, b: 2}</code> is equal to <code>{b: 2, a: 1}</code> only when <code>keyOrderSensitive</code> is <code>false</code>.  The default is <code>false</code>.</p>",
          "name": "keyOrderSensitive",
          "type": {
            "names": [
              "Boolean"
            ]
          }
        }
      ],
      "params": [
        {
          "name": "a",
          "type": {
            "names": [
              "EJSON"
            ]
          }
        },
        {
          "name": "b",
          "type": {
            "names": [
              "EJSON"
            ]
          }
        },
        {
          "name": "options",
          "optional": true,
          "type": {
            "names": [
              "Object"
            ]
          }
        }
      ],
      "scope": "static",
      "summary": "Return true if `a` and `b` are equal to each other.  Return false otherwise.  Uses the `equals` method on `a` if present, otherwise performs a deep comparison."
    },
    "EJSON.fromJSONValue": {
      "kind": "function",
      "locus": "Anywhere",
      "longname": "EJSON.fromJSONValue",
      "memberof": "EJSON",
      "name": "fromJSONValue",
      "options": [],
      "params": [
        {
          "description": "<p>A value to deserialize into EJSON.</p>",
          "name": "val",
          "type": {
            "names": [
              "JSONCompatible"
            ]
          }
        }
      ],
      "scope": "static",
      "summary": "Deserialize an EJSON value from its plain JSON representation."
    },
    "EJSON.isBinary": {
      "kind": "function",
      "locus": "Anywhere",
      "longname": "EJSON.isBinary",
      "memberof": "EJSON",
      "name": "isBinary",
      "options": [],
      "params": [
        {
          "description": "<p>The variable to check.</p>",
          "name": "x",
          "type": {
            "names": [
              "Object"
            ]
          }
        }
      ],
      "scope": "static",
      "summary": "Returns true if `x` is a buffer of binary data, as returned from [`EJSON.newBinary`](#ejson_new_binary)."
    },
    "EJSON.newBinary": {
      "kind": "member",
      "locus": "Anywhere",
      "longname": "EJSON.newBinary",
      "memberof": "EJSON",
      "name": "newBinary",
      "params": [
        {
          "description": "<p>The number of bytes of binary data to allocate.</p>",
          "name": "size",
          "type": {
            "names": [
              "Number"
            ]
          }
        }
      ],
      "scope": "static",
      "summary": "Allocate a new buffer of binary data that EJSON can serialize."
    },
    "EJSON.parse": {
      "kind": "function",
      "locus": "Anywhere",
      "longname": "EJSON.parse",
      "memberof": "EJSON",
      "name": "parse",
      "options": [],
      "params": [
        {
          "description": "<p>A string to parse into an EJSON value.</p>",
          "name": "str",
          "type": {
            "names": [
              "String"
            ]
          }
        }
      ],
      "scope": "static",
      "summary": "Parse a string into an EJSON value. Throws an error if the string is not valid EJSON."
    },
    "EJSON.stringify": {
      "kind": "function",
      "locus": "Anywhere",
      "longname": "EJSON.stringify",
      "memberof": "EJSON",
      "name": "stringify",
      "options": [
        {
          "description": "<p>Indents objects and arrays for easy readability.  When <code>true</code>, indents by 2 spaces; when an integer, indents by that number of spaces; and when a string, uses the string as the indentation pattern.</p>",
          "name": "indent",
          "type": {
            "names": [
              "Boolean",
              "Integer",
              "String"
            ]
          }
        },
        {
          "description": "<p>When <code>true</code>, stringifies keys in an object in sorted order.</p>",
          "name": "canonical",
          "type": {
            "names": [
              "Boolean"
            ]
          }
        }
      ],
      "params": [
        {
          "description": "<p>A value to stringify.</p>",
          "name": "val",
          "type": {
            "names": [
              "EJSON"
            ]
          }
        },
        {
          "name": "options",
          "optional": true,
          "type": {
            "names": [
              "Object"
            ]
          }
        }
      ],
      "scope": "static",
      "summary": "Serialize a value to a string.\n\nFor EJSON values, the serialization fully represents the value. For non-EJSON values, serializes the same way as `JSON.stringify`."
    },
    "EJSON.toJSONValue": {
      "kind": "function",
      "locus": "Anywhere",
      "longname": "EJSON.toJSONValue",
      "memberof": "EJSON",
      "name": "toJSONValue",
      "options": [],
      "params": [
        {
          "description": "<p>A value to serialize to plain JSON.</p>",
          "name": "val",
          "type": {
            "names": [
              "EJSON"
            ]
          }
        }
      ],
      "scope": "static",
      "summary": "Serialize an EJSON-compatible value into its plain JSON representation."
    },
    "Email.send": {
      "kind": "function",
      "locus": "Server",
      "longname": "Email.send",
      "memberof": "Email",
      "name": "send",
      "options": [
        {
          "description": "<p>&quot;From:&quot; address (required)</p>",
          "name": "from",
          "type": {
            "names": [
              "String"
            ]
          }
        },
        {
          "description": "<p>&quot;To:&quot;, &quot;Cc:&quot;, &quot;Bcc:&quot;, and &quot;Reply-To:&quot; addresses</p>",
          "name": "to, cc, bcc, replyTo",
          "type": {
            "names": [
              "String",
              "Array.<String>"
            ]
          }
        },
        {
          "description": "<p>&quot;Subject:&quot; line</p>",
          "name": "subject",
          "optional": true,
          "type": {
            "names": [
              "String"
            ]
          }
        },
        {
          "description": "<p>Mail body (in plain text and/or HTML)</p>",
          "name": "text, html",
          "optional": true,
          "type": {
            "names": [
              "String"
            ]
          }
        },
        {
          "description": "<p>Dictionary of custom headers</p>",
          "name": "headers",
          "optional": true,
          "type": {
            "names": [
              "Object"
            ]
          }
        }
      ],
      "params": [
        {
          "name": "options",
          "type": {
            "names": [
              "Object"
            ]
          }
        }
      ],
      "scope": "static",
      "summary": "Send an email. Throws an `Error` on failure to contact mail server\nor if mail server returns an error. All fields should match\n[RFC5322](http://tools.ietf.org/html/rfc5322) specification."
    },
    "HTTP.call": {
      "kind": "function",
      "locus": "Anywhere",
      "longname": "HTTP.call",
      "memberof": "HTTP",
      "name": "call",
      "options": [
        {
          "description": "<p>String to use as the HTTP request body.</p>",
          "name": "content",
          "type": {
            "names": [
              "String"
            ]
          }
        },
        {
          "description": "<p>JSON-able object to stringify and use as the HTTP request body. Overwrites <code>content</code>.</p>",
          "name": "data",
          "type": {
            "names": [
              "Object"
            ]
          }
        },
        {
          "description": "<p>Query string to go in the URL. Overwrites any query string in <code>url</code>.</p>",
          "name": "query",
          "type": {
            "names": [
              "String"
            ]
          }
        },
        {
          "description": "<p>Dictionary of request parameters to be encoded and placed in the URL (for GETs) or request body (for POSTs).  If <code>content</code> or <code>data</code> is specified, <code>params</code> will always be placed in the URL.</p>",
          "name": "params",
          "type": {
            "names": [
              "Object"
            ]
          }
        },
        {
          "description": "<p>HTTP basic authentication string of the form <code>&quot;username:password&quot;</code></p>",
          "name": "auth",
          "type": {
            "names": [
              "String"
            ]
          }
        },
        {
          "description": "<p>Dictionary of strings, headers to add to the HTTP request.</p>",
          "name": "headers",
          "type": {
            "names": [
              "Object"
            ]
          }
        },
        {
          "description": "<p>Maximum time in milliseconds to wait for the request before failing.  There is no timeout by default.</p>",
          "name": "timeout",
          "type": {
            "names": [
              "Number"
            ]
          }
        },
        {
          "description": "<p>If <code>true</code>, transparently follow HTTP redirects. Cannot be set to <code>false</code> on the client. Default <code>true</code>.</p>",
          "name": "followRedirects",
          "type": {
            "names": [
              "Boolean"
            ]
          }
        },
        {
          "description": "<p>On the server, <code>HTTP.call</code> is implemented by using the <a href=\"https://www.npmjs.com/package/request\">npm <code>request</code> module</a>. Any options in this object will be passed directly to the <code>request</code> invocation.</p>",
          "name": "npmRequestOptions",
          "type": {
            "names": [
              "Object"
            ]
          }
        }
      ],
      "params": [
        {
          "description": "<p>The <a href=\"http://en.wikipedia.org/wiki/HTTP_method\">HTTP method</a> to use, such as &quot;<code>GET</code>&quot;, &quot;<code>POST</code>&quot;, or &quot;<code>HEAD</code>&quot;.</p>",
          "name": "method",
          "type": {
            "names": [
              "String"
            ]
          }
        },
        {
          "description": "<p>The URL to retrieve.</p>",
          "name": "url",
          "type": {
            "names": [
              "String"
            ]
          }
        },
        {
          "name": "options",
          "optional": true,
          "type": {
            "names": [
              "Object"
            ]
          }
        },
        {
          "description": "<p>Optional callback.  If passed, the method runs asynchronously, instead of synchronously, and calls asyncCallback.  On the client, this callback is required.</p>",
          "name": "asyncCallback",
          "optional": true,
          "type": {
            "names": [
              "function"
            ]
          }
        }
      ],
      "scope": "static",
      "summary": "Perform an outbound HTTP request."
    },
    "HTTP.del": {
      "kind": "function",
      "locus": "Anywhere",
      "longname": "HTTP.del",
      "memberof": "HTTP",
      "name": "del",
      "options": [],
      "params": [
        {
          "description": "<p>The URL to which the request should be sent.</p>",
          "name": "url",
          "type": {
            "names": [
              "String"
            ]
          }
        },
        {
          "description": "<p>Options passed on to <a href=\"#http_call\"><code>HTTP.call</code></a>.</p>",
          "name": "callOptions",
          "optional": true,
          "type": {
            "names": [
              "Object"
            ]
          }
        },
        {
          "description": "<p>Callback that is called when the request is completed. Required on the client.</p>",
          "name": "asyncCallback",
          "optional": true,
          "type": {
            "names": [
              "function"
            ]
          }
        }
      ],
      "scope": "static",
      "summary": "Send an HTTP `DELETE` request. Equivalent to calling [`HTTP.call`](#http_call) with \"DELETE\" as the first argument. (Named `del` to avoid conflic with the Javascript keyword `delete`)"
    },
    "HTTP.get": {
      "kind": "function",
      "locus": "Anywhere",
      "longname": "HTTP.get",
      "memberof": "HTTP",
      "name": "get",
      "options": [],
      "params": [
        {
          "description": "<p>The URL to which the request should be sent.</p>",
          "name": "url",
          "type": {
            "names": [
              "String"
            ]
          }
        },
        {
          "description": "<p>Options passed on to <a href=\"#http_call\"><code>HTTP.call</code></a>.</p>",
          "name": "callOptions",
          "optional": true,
          "type": {
            "names": [
              "Object"
            ]
          }
        },
        {
          "description": "<p>Callback that is called when the request is completed. Required on the client.</p>",
          "name": "asyncCallback",
          "optional": true,
          "type": {
            "names": [
              "function"
            ]
          }
        }
      ],
      "scope": "static",
      "summary": "Send an HTTP `GET` request. Equivalent to calling [`HTTP.call`](#http_call) with \"GET\" as the first argument."
    },
    "HTTP.post": {
      "kind": "function",
      "locus": "Anywhere",
      "longname": "HTTP.post",
      "memberof": "HTTP",
      "name": "post",
      "options": [],
      "params": [
        {
          "description": "<p>The URL to which the request should be sent.</p>",
          "name": "url",
          "type": {
            "names": [
              "String"
            ]
          }
        },
        {
          "description": "<p>Options passed on to <a href=\"#http_call\"><code>HTTP.call</code></a>.</p>",
          "name": "callOptions",
          "optional": true,
          "type": {
            "names": [
              "Object"
            ]
          }
        },
        {
          "description": "<p>Callback that is called when the request is completed. Required on the client.</p>",
          "name": "asyncCallback",
          "optional": true,
          "type": {
            "names": [
              "function"
            ]
          }
        }
      ],
      "scope": "static",
      "summary": "Send an HTTP `POST` request. Equivalent to calling [`HTTP.call`](#http_call) with \"POST\" as the first argument."
    },
    "HTTP.put": {
      "kind": "function",
      "locus": "Anywhere",
      "longname": "HTTP.put",
      "memberof": "HTTP",
      "name": "put",
      "options": [],
      "params": [
        {
          "description": "<p>The URL to which the request should be sent.</p>",
          "name": "url",
          "type": {
            "names": [
              "String"
            ]
          }
        },
        {
          "description": "<p>Options passed on to <a href=\"#http_call\"><code>HTTP.call</code></a>.</p>",
          "name": "callOptions",
          "optional": true,
          "type": {
            "names": [
              "Object"
            ]
          }
        },
        {
          "description": "<p>Callback that is called when the request is completed. Required on the client.</p>",
          "name": "asyncCallback",
          "optional": true,
          "type": {
            "names": [
              "function"
            ]
          }
        }
      ],
      "scope": "static",
      "summary": "Send an HTTP `PUT` request. Equivalent to calling [`HTTP.call`](#http_call) with \"PUT\" as the first argument."
    },
    "Match": {
      "kind": "namespace",
      "longname": "Match",
      "name": "Match",
      "summary": "The namespace for all Match types and methods."
    },
    "Match.test": {
      "kind": "function",
      "locus": "Anywhere",
      "longname": "Match.test",
      "memberof": "Match",
      "name": "test",
      "options": [],
      "params": [
        {
          "description": "<p>The value to check</p>",
          "name": "value",
          "type": {
            "names": [
              "Any"
            ]
          }
        },
        {
          "description": "<p>The pattern to match <code>value</code> against</p>",
          "name": "pattern",
          "type": {
            "names": [
              "MatchPattern"
            ]
          }
        }
      ],
      "scope": "static",
      "summary": "Returns true if the value matches the pattern."
    },
    "Meteor": {
      "kind": "namespace",
      "longname": "Meteor",
      "name": "Meteor",
      "summary": "The Meteor namespace"
    },
    "Meteor.Error": {
      "kind": "class",
      "locus": "Anywhere",
      "longname": "Meteor.Error",
      "memberof": "Meteor",
      "name": "Error",
      "options": [],
      "params": [
        {
          "description": "<p>A string code uniquely identifying this kind of error.\nThis string should be used by callers of the method to determine the\nappropriate action to take, instead of attempting to parse the reason\nor details fields. For example:</p>\n<pre class=\"prettyprint source\"><code>// on the server, pick a code unique to this error\n// the reason field should be a useful debug message\nthrow new Meteor.Error(&quot;logged-out&quot;, \n  &quot;The user must be logged in to post a comment.&quot;);\n\n// on the client\nMeteor.call(&quot;methodName&quot;, function (error) {\n  // identify the error\n  if (error.error === &quot;logged-out&quot;) {\n    // show a nice error message\n    Session.set(&quot;errorMessage&quot;, &quot;Please log in to post a comment.&quot;);\n  }\n});</code></pre><p>For legacy reasons, some built-in Meteor functions such as <code>check</code> throw\nerrors with a number in this field.</p>",
          "name": "error",
          "type": {
            "names": [
              "String"
            ]
          }
        },
        {
          "description": "<p>Optional.  A short human-readable summary of the\nerror, like 'Not Found'.</p>",
          "name": "reason",
          "optional": true,
          "type": {
            "names": [
              "String"
            ]
          }
        },
        {
          "description": "<p>Optional.  Additional information about the error,\nlike a textual stack trace.</p>",
          "name": "details",
          "optional": true,
          "type": {
            "names": [
              "String"
            ]
          }
        }
      ],
      "scope": "static",
      "summary": "This class represents a symbolic error thrown by a method."
    },
    "Meteor.absoluteUrl": {
      "kind": "function",
      "locus": "Anywhere",
      "longname": "Meteor.absoluteUrl",
      "memberof": "Meteor",
      "name": "absoluteUrl",
      "options": [
        {
          "description": "<p>Create an HTTPS URL.</p>",
          "name": "secure",
          "type": {
            "names": [
              "Boolean"
            ]
          }
        },
        {
          "description": "<p>Replace localhost with 127.0.0.1. Useful for services that don't recognize localhost as a domain name.</p>",
          "name": "replaceLocalhost",
          "type": {
            "names": [
              "Boolean"
            ]
          }
        },
        {
          "description": "<p>Override the default ROOT_URL from the server environment. For example: &quot;<code>http://foo.example.com</code>&quot;</p>",
          "name": "rootUrl",
          "type": {
            "names": [
              "String"
            ]
          }
        }
      ],
      "params": [
        {
          "description": "<p>A path to append to the root URL. Do not include a leading &quot;<code>/</code>&quot;.</p>",
          "name": "path",
          "optional": true,
          "type": {
            "names": [
              "String"
            ]
          }
        },
        {
          "name": "options",
          "optional": true,
          "type": {
            "names": [
              "Object"
            ]
          }
        }
      ],
      "scope": "static",
      "summary": "Generate an absolute URL pointing to the application. The server reads from the `ROOT_URL` environment variable to determine where it is running. This is taken care of automatically for apps deployed with `meteor deploy`, but must be provided when using `meteor build`."
    },
    "Meteor.apply": {
      "kind": "function",
      "locus": "Anywhere",
      "longname": "Meteor.apply",
      "memberof": "Meteor",
      "name": "apply",
      "options": [
        {
          "description": "<p>(Client only) If true, don't send this method until all previous method calls have completed, and don't send any subsequent method calls until this one is completed.</p>",
          "name": "wait",
          "type": {
            "names": [
              "Boolean"
            ]
          }
        },
        {
          "description": "<p>(Client only) This callback is invoked with the error or result of the method (just like <code>asyncCallback</code>) as soon as the error or result is available. The local cache may not yet reflect the writes performed by the method.</p>",
          "name": "onResultReceived",
          "type": {
            "names": [
              "function"
            ]
          }
        }
      ],
      "params": [
        {
          "description": "<p>Name of method to invoke</p>",
          "name": "name",
          "type": {
            "names": [
              "String"
            ]
          }
        },
        {
          "description": "<p>Method arguments</p>",
          "name": "args",
          "type": {
            "names": [
              "Array.<EJSONable>"
            ]
          }
        },
        {
          "name": "options",
          "optional": true,
          "type": {
            "names": [
              "Object"
            ]
          }
        },
        {
          "description": "<p>Optional callback; same semantics as in <a href=\"#meteor_call\"><code>Meteor.call</code></a>.</p>",
          "name": "asyncCallback",
          "optional": true,
          "type": {
            "names": [
              "function"
            ]
          }
        }
      ],
      "scope": "static",
      "summary": "Invoke a method passing an array of arguments."
    },
    "Meteor.call": {
      "kind": "function",
      "locus": "Anywhere",
      "longname": "Meteor.call",
      "memberof": "Meteor",
      "name": "call",
      "options": [],
      "params": [
        {
          "description": "<p>Name of method to invoke</p>",
          "name": "name",
          "type": {
            "names": [
              "String"
            ]
          }
        },
        {
          "description": "<p>Optional method arguments</p>",
          "name": "arg1, arg2...",
          "optional": true,
          "type": {
            "names": [
              "EJSONable"
            ]
          }
        },
        {
          "description": "<p>Optional callback, which is called asynchronously with the error or result after the method is complete. If not provided, the method runs synchronously if possible (see below).</p>",
          "name": "asyncCallback",
          "optional": true,
          "type": {
            "names": [
              "function"
            ]
          }
        }
      ],
      "scope": "static",
      "summary": "Invokes a method passing any number of arguments."
    },
    "Meteor.clearInterval": {
      "kind": "function",
      "locus": "Anywhere",
      "longname": "Meteor.clearInterval",
      "memberof": "Meteor",
      "name": "clearInterval",
      "options": [],
      "params": [
        {
          "description": "<p>The handle returned by <code>Meteor.setInterval</code></p>",
          "name": "id",
          "type": {
            "names": [
              "Number"
            ]
          }
        }
      ],
      "scope": "static",
      "summary": "Cancel a repeating function call scheduled by `Meteor.setInterval`."
    },
    "Meteor.clearTimeout": {
      "kind": "function",
      "locus": "Anywhere",
      "longname": "Meteor.clearTimeout",
      "memberof": "Meteor",
      "name": "clearTimeout",
      "options": [],
      "params": [
        {
          "description": "<p>The handle returned by <code>Meteor.setTimeout</code></p>",
          "name": "id",
          "type": {
            "names": [
              "Number"
            ]
          }
        }
      ],
      "scope": "static",
      "summary": "Cancel a function call scheduled by `Meteor.setTimeout`."
    },
    "Meteor.disconnect": {
      "kind": "function",
      "locus": "Client",
      "longname": "Meteor.disconnect",
      "memberof": "Meteor",
      "name": "disconnect",
      "options": [],
      "params": [],
      "scope": "static",
      "summary": "Disconnect the client from the server."
    },
    "Meteor.isClient": {
      "kind": "member",
      "locus": "Anywhere",
      "longname": "Meteor.isClient",
      "memberof": "Meteor",
      "name": "isClient",
      "scope": "static",
      "summary": "Boolean variable.  True if running in client environment.",
      "type": {
        "names": [
          "Boolean"
        ]
      }
    },
    "Meteor.isCordova": {
      "kind": "member",
      "locus": "Anywhere",
      "longname": "Meteor.isCordova",
      "memberof": "Meteor",
      "name": "isCordova",
      "scope": "static",
      "summary": "Boolean variable.  True if running in a Cordova mobile environment.",
      "type": {
        "names": [
          "Boolean"
        ]
      }
    },
    "Meteor.isServer": {
      "kind": "member",
      "locus": "Anywhere",
      "longname": "Meteor.isServer",
      "memberof": "Meteor",
      "name": "isServer",
      "scope": "static",
      "summary": "Boolean variable.  True if running in server environment.",
      "type": {
        "names": [
          "Boolean"
        ]
      }
    },
    "Meteor.loggingIn": {
      "kind": "function",
      "locus": "Client",
      "longname": "Meteor.loggingIn",
      "memberof": "Meteor",
      "name": "loggingIn",
      "options": [],
      "params": [],
      "scope": "static",
      "summary": "True if a login method (such as `Meteor.loginWithPassword`, `Meteor.loginWithFacebook`, or `Accounts.createUser`) is currently in progress. A reactive data source."
    },
    "Meteor.loginWith<ExternalService>": {
      "kind": "function",
      "locus": "Client",
      "longname": "Meteor.loginWith<ExternalService>",
      "memberof": "Meteor",
      "name": "loginWith<ExternalService>",
      "options": [
        {
          "description": "<p>A list of permissions to request from the user.</p>",
          "name": "requestPermissions",
          "type": {
            "names": [
              "Array.<String>"
            ]
          }
        },
        {
          "description": "<p>If true, asks the user for permission to act on their behalf when offline. This stores an additional offline token in the <code>services</code> field of the user document. Currently only supported with Google.</p>",
          "name": "requestOfflineToken",
          "type": {
            "names": [
              "Boolean"
            ]
          }
        },
        {
          "description": "<p>If true, forces the user to approve the app's permissions, even if previously approved. Currently only supported with Google.</p>",
          "name": "forceApprovalPrompt",
          "type": {
            "names": [
              "Boolean"
            ]
          }
        },
        {
          "description": "<p>An email address that the external service will use to pre-fill the login prompt. Currently only supported with Meteor developer accounts.</p>",
          "name": "userEmail",
          "type": {
            "names": [
              "String"
            ]
          }
        },
        {
          "description": "<p>Login style (&quot;popup&quot; or &quot;redirect&quot;, defaults to the login service configuration).  The &quot;popup&quot; style opens the login page in a separate popup window, which is generally preferred because the Meteor application doesn't need to be reloaded.  The &quot;redirect&quot; style redirects the Meteor application's window to the login page, and the login service provider redirects back to the Meteor application which is then reloaded.  The &quot;redirect&quot; style can be used in situations where a popup window can't be opened, such as in a mobile UIWebView.  The &quot;redirect&quot; style however relies on session storage which isn't available in Safari private mode, so the &quot;popup&quot; style will be forced if session storage can't be used.</p>",
          "name": "loginStyle",
          "type": {
            "names": [
              "String"
            ]
          }
        }
      ],
      "params": [
        {
          "name": "options",
          "optional": true,
          "type": {
            "names": [
              "Object"
            ]
          }
        },
        {
          "description": "<p>Optional callback. Called with no arguments on success, or with a single <code>Error</code> argument on failure.</p>",
          "name": "callback",
          "optional": true,
          "type": {
            "names": [
              "function"
            ]
          }
        }
      ],
      "scope": "static",
      "summary": "Log the user in using an external service."
    },
    "Meteor.loginWithPassword": {
      "kind": "function",
      "locus": "Client",
      "longname": "Meteor.loginWithPassword",
      "memberof": "Meteor",
      "name": "loginWithPassword",
      "options": [],
      "params": [
        {
          "description": "<p>Either a string interpreted as a username or an email; or an object with a single key: <code>email</code>, <code>username</code> or <code>id</code>.</p>",
          "name": "user",
          "type": {
            "names": [
              "Object",
              "String"
            ]
          }
        },
        {
          "description": "<p>The user's password.</p>",
          "name": "password",
          "type": {
            "names": [
              "String"
            ]
          }
        },
        {
          "description": "<p>Optional callback. Called with no arguments on success, or with a single <code>Error</code> argument on failure.</p>",
          "name": "callback",
          "optional": true,
          "type": {
            "names": [
              "function"
            ]
          }
        }
      ],
      "scope": "static",
      "summary": "Log the user in with a password."
    },
    "Meteor.logout": {
      "kind": "function",
      "locus": "Client",
      "longname": "Meteor.logout",
      "memberof": "Meteor",
      "name": "logout",
      "options": [],
      "params": [
        {
          "description": "<p>Optional callback. Called with no arguments on success, or with a single <code>Error</code> argument on failure.</p>",
          "name": "callback",
          "optional": true,
          "type": {
            "names": [
              "function"
            ]
          }
        }
      ],
      "scope": "static",
      "summary": "Log the user out."
    },
    "Meteor.logoutOtherClients": {
      "kind": "function",
      "locus": "Client",
      "longname": "Meteor.logoutOtherClients",
      "memberof": "Meteor",
      "name": "logoutOtherClients",
      "options": [],
      "params": [
        {
          "description": "<p>Optional callback. Called with no arguments on success, or with a single <code>Error</code> argument on failure.</p>",
          "name": "callback",
          "optional": true,
          "type": {
            "names": [
              "function"
            ]
          }
        }
      ],
      "scope": "static",
      "summary": "Log out other clients logged in as the current user, but does not log out the client that calls this function."
    },
    "Meteor.methods": {
      "kind": "function",
      "locus": "Anywhere",
      "longname": "Meteor.methods",
      "memberof": "Meteor",
      "name": "methods",
      "options": [],
      "params": [
        {
          "description": "<p>Dictionary whose keys are method names and values are functions.</p>",
          "name": "methods",
          "type": {
            "names": [
              "Object"
            ]
          }
        }
      ],
      "scope": "static",
      "summary": "Defines functions that can be invoked over the network by clients."
    },
    "Meteor.onConnection": {
      "kind": "function",
      "locus": "Server",
      "longname": "Meteor.onConnection",
      "memberof": "Meteor",
      "name": "onConnection",
      "options": [],
      "params": [
        {
          "description": "<p>The function to call when a new DDP connection is established.</p>",
          "name": "callback",
          "type": {
            "names": [
              "function"
            ]
          }
        }
      ],
      "scope": "static",
      "summary": "Register a callback to be called when a new DDP connection is made to the server."
    },
    "Meteor.publish": {
      "kind": "function",
      "locus": "Server",
      "longname": "Meteor.publish",
      "memberof": "Meteor",
      "name": "publish",
      "options": [],
      "params": [
        {
          "description": "<p>Name of the record set.  If <code>null</code>, the set has no name, and the record set is automatically sent to all connected clients.</p>",
          "name": "name",
          "type": {
            "names": [
              "String"
            ]
          }
        },
        {
          "description": "<p>Function called on the server each time a client subscribes.  Inside the function, <code>this</code> is the publish handler object, described below.  If the client passed arguments to <code>subscribe</code>, the function is called with the same arguments.</p>",
          "name": "func",
          "type": {
            "names": [
              "function"
            ]
          }
        }
      ],
      "scope": "static",
      "summary": "Publish a record set."
    },
    "Meteor.reconnect": {
      "kind": "function",
      "locus": "Client",
      "longname": "Meteor.reconnect",
      "memberof": "Meteor",
      "name": "reconnect",
      "options": [],
      "params": [],
      "scope": "static",
      "summary": "Force an immediate reconnection attempt if the client is not connected to the server.\n\n  This method does nothing if the client is already connected."
    },
    "Meteor.release": {
      "kind": "member",
      "locus": "Anywhere",
      "longname": "Meteor.release",
      "memberof": "Meteor",
      "name": "release",
      "scope": "static",
      "summary": "`Meteor.release` is a string containing the name of the [release](#meteorupdate) with which the project was built (for example, `\"1.2.3\"`). It is `undefined` if the project was built using a git checkout of Meteor.",
      "type": {
        "names": [
          "String"
        ]
      }
    },
    "Meteor.setInterval": {
      "kind": "function",
      "locus": "Anywhere",
      "longname": "Meteor.setInterval",
      "memberof": "Meteor",
      "name": "setInterval",
      "options": [],
      "params": [
        {
          "description": "<p>The function to run</p>",
          "name": "func",
          "type": {
            "names": [
              "function"
            ]
          }
        },
        {
          "description": "<p>Number of milliseconds to wait between each function call.</p>",
          "name": "delay",
          "type": {
            "names": [
              "Number"
            ]
          }
        }
      ],
      "scope": "static",
      "summary": "Call a function repeatedly, with a time delay between calls."
    },
    "Meteor.setTimeout": {
      "kind": "function",
      "locus": "Anywhere",
      "longname": "Meteor.setTimeout",
      "memberof": "Meteor",
      "name": "setTimeout",
      "options": [],
      "params": [
        {
          "description": "<p>The function to run</p>",
          "name": "func",
          "type": {
            "names": [
              "function"
            ]
          }
        },
        {
          "description": "<p>Number of milliseconds to wait before calling function</p>",
          "name": "delay",
          "type": {
            "names": [
              "Number"
            ]
          }
        }
      ],
      "scope": "static",
      "summary": "Call a function in the future after waiting for a specified delay."
    },
    "Meteor.settings": {
      "kind": "member",
      "locus": "Anywhere",
      "longname": "Meteor.settings",
      "memberof": "Meteor",
      "name": "settings",
      "scope": "static",
      "summary": "`Meteor.settings` contains deployment-specific configuration options. You can initialize settings by passing the `--settings` option (which takes the name of a file containing JSON data) to `meteor run` or `meteor deploy`. When running your server directly (e.g. from a bundle), you instead specify settings by putting the JSON directly into the `METEOR_SETTINGS` environment variable. If you don't provide any settings, `Meteor.settings` will be an empty object.  If the settings object contains a key named `public`, then `Meteor.settings.public` will be available on the client as well as the server.  All other properties of `Meteor.settings` are only defined on the server.",
      "type": {
        "names": [
          "Object"
        ]
      }
    },
    "Meteor.startup": {
      "kind": "function",
      "locus": "Anywhere",
      "longname": "Meteor.startup",
      "memberof": "Meteor",
      "name": "startup",
      "options": [],
      "params": [
        {
          "description": "<p>A function to run on startup.</p>",
          "name": "func",
          "type": {
            "names": [
              "function"
            ]
          }
        }
      ],
      "scope": "static",
      "summary": "Run code when a client or a server starts."
    },
    "Meteor.status": {
      "kind": "function",
      "locus": "Client",
      "longname": "Meteor.status",
      "memberof": "Meteor",
      "name": "status",
      "options": [],
      "params": [],
      "scope": "static",
      "summary": "Get the current connection status. A reactive data source."
    },
    "Meteor.subscribe": {
      "kind": "function",
      "locus": "Client",
      "longname": "Meteor.subscribe",
      "memberof": "Meteor",
      "name": "subscribe",
      "options": [],
      "params": [
        {
          "description": "<p>Name of the subscription.  Matches the name of the\nserver's <code>publish()</code> call.</p>",
          "name": "name",
          "type": {
            "names": [
              "String"
            ]
          }
        },
        {
          "description": "<p>Optional arguments passed to publisher\nfunction on server.</p>",
          "name": "arg1, arg2...",
          "optional": true,
          "type": {
            "names": [
              "Any"
            ]
          }
        },
        {
          "description": "<p>Optional. May include <code>onStop</code>\nand <code>onReady</code> callbacks. If there is an error, it is passed as an\nargument to <code>onStop</code>. If a function is passed instead of an object, it\nis interpreted as an <code>onReady</code> callback.</p>",
          "name": "callbacks",
          "optional": true,
          "type": {
            "names": [
              "function",
              "Object"
            ]
          }
        }
      ],
      "scope": "static",
      "summary": "Subscribe to a record set.  Returns a handle that provides\n`stop()` and `ready()` methods."
    },
    "Meteor.user": {
      "kind": "function",
      "locus": "Anywhere but publish functions",
      "longname": "Meteor.user",
      "memberof": "Meteor",
      "name": "user",
      "options": [],
      "params": [],
      "scope": "static",
      "summary": "Get the current user record, or `null` if no user is logged in. A reactive data source."
    },
    "Meteor.userId": {
      "kind": "function",
      "locus": "Anywhere but publish functions",
      "longname": "Meteor.userId",
      "memberof": "Meteor",
      "name": "userId",
      "options": [],
      "params": [],
      "scope": "static",
      "summary": "Get the current user id, or `null` if no user is logged in. A reactive data source."
    },
    "Meteor.users": {
      "kind": "member",
      "locus": "Anywhere",
      "longname": "Meteor.users",
      "memberof": "Meteor",
      "name": "users",
      "scope": "static",
      "summary": "A [Mongo.Collection](#collections) containing user documents.",
      "type": {
        "names": [
          "Mongo.Collection"
        ]
      }
    },
    "Meteor.wrapAsync": {
      "kind": "function",
      "locus": "Anywhere",
      "longname": "Meteor.wrapAsync",
      "memberof": "Meteor",
      "name": "wrapAsync",
      "options": [],
      "params": [
        {
          "description": "<p>A function that takes a callback as its final parameter</p>",
          "name": "func",
          "type": {
            "names": [
              "function"
            ]
          }
        },
        {
          "description": "<p>Optional <code>this</code> object against which the original function will be invoked</p>",
          "name": "context",
          "optional": true,
          "type": {
            "names": [
              "Object"
            ]
          }
        }
      ],
      "scope": "static",
      "summary": "Wrap a function that takes a callback function as its final parameter. On the server, the wrapped function can be used either synchronously (without passing a callback) or asynchronously (when a callback is passed). On the client, a callback is always required; errors will be logged if there is no callback. If a callback is provided, the environment captured when the original function was called will be restored in the callback."
    },
    "MethodInvocation": {
      "instancename": "this",
      "kind": "function",
      "longname": "MethodInvocation",
      "name": "MethodInvocation",
      "options": [],
      "params": [
        {
          "name": "options",
          "type": {
            "names": [
              "Object"
            ]
          }
        }
      ],
      "scope": "global",
      "summary": "The state for a single invocation of a method, referenced by this\ninside a method definition."
    },
    "MethodInvocation#connection": {
      "kind": "member",
      "locus": "Server",
      "longname": "MethodInvocation#connection",
      "memberof": "MethodInvocation",
      "name": "connection",
      "scope": "instance",
      "summary": "Access inside a method invocation. The [connection](#meteor_onconnection) that this method was received on. `null` if the method is not associated with a connection, eg. a server initiated method call."
    },
    "MethodInvocation#isSimulation": {
      "kind": "member",
      "locus": "Anywhere",
      "longname": "MethodInvocation#isSimulation",
      "memberof": "MethodInvocation",
      "name": "isSimulation",
      "scope": "instance",
      "summary": "Access inside a method invocation.  Boolean value, true if this invocation is a stub.",
      "type": {
        "names": [
          "Boolean"
        ]
      }
    },
    "MethodInvocation#setUserId": {
      "kind": "function",
      "locus": "Server",
      "longname": "MethodInvocation#setUserId",
      "memberof": "MethodInvocation",
      "name": "setUserId",
      "options": [],
      "params": [
        {
          "description": "<p>The value that should be returned by <code>userId</code> on this connection.</p>",
          "name": "userId",
          "type": {
            "names": [
              "String",
              "null"
            ]
          }
        }
      ],
      "scope": "instance",
      "summary": "Set the logged in user."
    },
    "MethodInvocation#unblock": {
      "kind": "function",
      "locus": "Server",
      "longname": "MethodInvocation#unblock",
      "memberof": "MethodInvocation",
      "name": "unblock",
      "options": [],
      "params": [],
      "scope": "instance",
      "summary": "Call inside a method invocation.  Allow subsequent method from this client to begin running in a new fiber."
    },
    "MethodInvocation#userId": {
      "kind": "member",
      "locus": "Anywhere",
      "longname": "MethodInvocation#userId",
      "memberof": "MethodInvocation",
      "name": "userId",
      "scope": "instance",
      "summary": "The id of the user that made this method call, or `null` if no user was logged in."
    },
    "Mongo": {
      "kind": "namespace",
      "longname": "Mongo",
      "name": "Mongo",
      "scope": "global",
      "summary": "Namespace for MongoDB-related items"
    },
    "Mongo.Collection": {
      "instancename": "collection",
      "kind": "class",
      "locus": "Anywhere",
      "longname": "Mongo.Collection",
      "memberof": "Mongo",
      "name": "Collection",
      "options": [
        {
          "description": "<p>The server connection that will manage this collection. Uses the default connection if not specified.  Pass the return value of calling <a href=\"#ddp_connect\"><code>DDP.connect</code></a> to specify a different server. Pass <code>null</code> to specify no connection. Unmanaged (<code>name</code> is null) collections cannot specify a connection.</p>",
          "name": "connection",
          "type": {
            "names": [
              "Object"
            ]
          }
        },
        {
          "description": "<p>The method of generating the <code>_id</code> fields of new documents in this collection.  Possible values:</p>\n<ul>\n<li><strong><code>'STRING'</code></strong>: random strings</li>\n<li><strong><code>'MONGO'</code></strong>:  random <a href=\"#mongo_object_id\"><code>Mongo.ObjectID</code></a> values</li>\n</ul>\n<p>The default id generation technique is <code>'STRING'</code>.</p>",
          "name": "idGeneration",
          "type": {
            "names": [
              "String"
            ]
          }
        },
        {
          "description": "<p>An optional transformation function. Documents will be passed through this function before being returned from <code>fetch</code> or <code>findOne</code>, and before being passed to callbacks of <code>observe</code>, <code>map</code>, <code>forEach</code>, <code>allow</code>, and <code>deny</code>. Transforms are <em>not</em> applied for the callbacks of <code>observeChanges</code> or to cursors returned from publish functions.</p>",
          "name": "transform",
          "type": {
            "names": [
              "function"
            ]
          }
        }
      ],
      "params": [
        {
          "description": "<p>The name of the collection.  If null, creates an unmanaged (unsynchronized) local collection.</p>",
          "name": "name",
          "type": {
            "names": [
              "String"
            ]
          }
        },
        {
          "name": "options",
          "optional": true,
          "type": {
            "names": [
              "Object"
            ]
          }
        }
      ],
      "scope": "static",
      "summary": "Constructor for a Collection"
    },
    "Mongo.Collection#allow": {
      "kind": "function",
      "locus": "Server",
      "longname": "Mongo.Collection#allow",
      "memberof": "Mongo.Collection",
      "name": "allow",
      "options": [
        {
          "description": "<p>Functions that look at a proposed modification to the database and return true if it should be allowed.</p>",
          "name": "insert, update, remove",
          "type": {
            "names": [
              "function"
            ]
          }
        },
        {
          "description": "<p>Optional performance enhancement. Limits the fields that will be fetched from the database for inspection by your <code>update</code> and <code>remove</code> functions.</p>",
          "name": "fetch",
          "type": {
            "names": [
              "Array.<String>"
            ]
          }
        },
        {
          "description": "<p>Overrides <code>transform</code> on the  <a href=\"#collections\"><code>Collection</code></a>.  Pass <code>null</code> to disable transformation.</p>",
          "name": "transform",
          "type": {
            "names": [
              "function"
            ]
          }
        }
      ],
      "params": [
        {
          "name": "options",
          "type": {
            "names": [
              "Object"
            ]
          }
        }
      ],
      "scope": "instance",
      "summary": "Allow users to write directly to this collection from client code, subject to limitations you define."
    },
    "Mongo.Collection#deny": {
      "kind": "function",
      "locus": "Server",
      "longname": "Mongo.Collection#deny",
      "memberof": "Mongo.Collection",
      "name": "deny",
      "options": [
        {
          "description": "<p>Functions that look at a proposed modification to the database and return true if it should be denied, even if an <a href=\"#allow\">allow</a> rule says otherwise.</p>",
          "name": "insert, update, remove",
          "type": {
            "names": [
              "function"
            ]
          }
        },
        {
          "description": "<p>Optional performance enhancement. Limits the fields that will be fetched from the database for inspection by your <code>update</code> and <code>remove</code> functions.</p>",
          "name": "fetch",
          "type": {
            "names": [
              "Array.<String>"
            ]
          }
        },
        {
          "description": "<p>Overrides <code>transform</code> on the  <a href=\"#collections\"><code>Collection</code></a>.  Pass <code>null</code> to disable transformation.</p>",
          "name": "transform",
          "type": {
            "names": [
              "function"
            ]
          }
        }
      ],
      "params": [
        {
          "name": "options",
          "type": {
            "names": [
              "Object"
            ]
          }
        }
      ],
      "scope": "instance",
      "summary": "Override `allow` rules."
    },
    "Mongo.Collection#find": {
      "kind": "function",
      "locus": "Anywhere",
      "longname": "Mongo.Collection#find",
      "memberof": "Mongo.Collection",
      "name": "find",
      "options": [
        {
          "description": "<p>Sort order (default: natural order)</p>",
          "name": "sort",
          "type": {
            "names": [
              "MongoSortSpecifier"
            ]
          }
        },
        {
          "description": "<p>Number of results to skip at the beginning</p>",
          "name": "skip",
          "type": {
            "names": [
              "Number"
            ]
          }
        },
        {
          "description": "<p>Maximum number of results to return</p>",
          "name": "limit",
          "type": {
            "names": [
              "Number"
            ]
          }
        },
        {
          "description": "<p>Dictionary of fields to return or exclude.</p>",
          "name": "fields",
          "type": {
            "names": [
              "MongoFieldSpecifier"
            ]
          }
        },
        {
          "description": "<p>(Client only) Default <code>true</code>; pass <code>false</code> to disable reactivity</p>",
          "name": "reactive",
          "type": {
            "names": [
              "Boolean"
            ]
          }
        },
        {
          "description": "<p>Overrides <code>transform</code> on the  <a href=\"#collections\"><code>Collection</code></a> for this cursor.  Pass <code>null</code> to disable transformation.</p>",
          "name": "transform",
          "type": {
            "names": [
              "function"
            ]
          }
        }
      ],
      "params": [
        {
          "description": "<p>A query describing the documents to find</p>",
          "name": "selector",
          "optional": true,
          "type": {
            "names": [
              "MongoSelector"
            ]
          }
        },
        {
          "name": "options",
          "optional": true,
          "type": {
            "names": [
              "Object"
            ]
          }
        }
      ],
      "returns": [
        {
          "type": {
            "names": [
              "Mongo.Cursor"
            ]
          }
        }
      ],
      "scope": "instance",
      "summary": "Find the documents in a collection that match the selector."
    },
    "Mongo.Collection#findOne": {
      "kind": "function",
      "locus": "Anywhere",
      "longname": "Mongo.Collection#findOne",
      "memberof": "Mongo.Collection",
      "name": "findOne",
      "options": [
        {
          "description": "<p>Sort order (default: natural order)</p>",
          "name": "sort",
          "type": {
            "names": [
              "MongoSortSpecifier"
            ]
          }
        },
        {
          "description": "<p>Number of results to skip at the beginning</p>",
          "name": "skip",
          "type": {
            "names": [
              "Number"
            ]
          }
        },
        {
          "description": "<p>Dictionary of fields to return or exclude.</p>",
          "name": "fields",
          "type": {
            "names": [
              "MongoFieldSpecifier"
            ]
          }
        },
        {
          "description": "<p>(Client only) Default true; pass false to disable reactivity</p>",
          "name": "reactive",
          "type": {
            "names": [
              "Boolean"
            ]
          }
        },
        {
          "description": "<p>Overrides <code>transform</code> on the <a href=\"#collections\"><code>Collection</code></a> for this cursor.  Pass <code>null</code> to disable transformation.</p>",
          "name": "transform",
          "type": {
            "names": [
              "function"
            ]
          }
        }
      ],
      "params": [
        {
          "description": "<p>A query describing the documents to find</p>",
          "name": "selector",
          "optional": true,
          "type": {
            "names": [
              "MongoSelector"
            ]
          }
        },
        {
          "name": "options",
          "optional": true,
          "type": {
            "names": [
              "Object"
            ]
          }
        }
      ],
      "returns": [
        {
          "type": {
            "names": [
              "Object"
            ]
          }
        }
      ],
      "scope": "instance",
      "summary": "Finds the first document that matches the selector, as ordered by sort and skip options."
    },
    "Mongo.Collection#insert": {
      "kind": "function",
      "locus": "Anywhere",
      "longname": "Mongo.Collection#insert",
      "memberof": "Mongo.Collection",
      "name": "insert",
      "options": [],
      "params": [
        {
          "description": "<p>The document to insert. May not yet have an _id attribute, in which case Meteor will generate one for you.</p>",
          "name": "doc",
          "type": {
            "names": [
              "Object"
            ]
          }
        },
        {
          "description": "<p>Optional.  If present, called with an error object as the first argument and, if no error, the _id as the second.</p>",
          "name": "callback",
          "optional": true,
          "type": {
            "names": [
              "function"
            ]
          }
        }
      ],
      "scope": "instance",
      "summary": "Insert a document in the collection.  Returns its unique _id."
    },
    "Mongo.Collection#remove": {
      "kind": "function",
      "locus": "Anywhere",
      "longname": "Mongo.Collection#remove",
      "memberof": "Mongo.Collection",
      "name": "remove",
      "options": [],
      "params": [
        {
          "description": "<p>Specifies which documents to remove</p>",
          "name": "selector",
          "type": {
            "names": [
              "MongoSelector"
            ]
          }
        },
        {
          "description": "<p>Optional.  If present, called with an error object as its argument.</p>",
          "name": "callback",
          "optional": true,
          "type": {
            "names": [
              "function"
            ]
          }
        }
      ],
      "scope": "instance",
      "summary": "Remove documents from the collection"
    },
    "Mongo.Collection#update": {
      "kind": "function",
      "locus": "Anywhere",
      "longname": "Mongo.Collection#update",
      "memberof": "Mongo.Collection",
      "name": "update",
      "options": [
        {
          "description": "<p>True to modify all matching documents; false to only modify one of the matching documents (the default).</p>",
          "name": "multi",
          "type": {
            "names": [
              "Boolean"
            ]
          }
        },
        {
          "description": "<p>True to insert a document if no matching documents are found.</p>",
          "name": "upsert",
          "type": {
            "names": [
              "Boolean"
            ]
          }
        }
      ],
      "params": [
        {
          "description": "<p>Specifies which documents to modify</p>",
          "name": "selector",
          "type": {
            "names": [
              "MongoSelector"
            ]
          }
        },
        {
          "description": "<p>Specifies how to modify the documents</p>",
          "name": "modifier",
          "type": {
            "names": [
              "MongoModifier"
            ]
          }
        },
        {
          "name": "options",
          "optional": true,
          "type": {
            "names": [
              "Object"
            ]
          }
        },
        {
          "description": "<p>Optional.  If present, called with an error object as the first argument and, if no error, the number of affected documents as the second.</p>",
          "name": "callback",
          "optional": true,
          "type": {
            "names": [
              "function"
            ]
          }
        }
      ],
      "scope": "instance",
      "summary": "Modify one or more documents in the collection. Returns the number of affected documents."
    },
    "Mongo.Collection#upsert": {
      "kind": "function",
      "locus": "Anywhere",
      "longname": "Mongo.Collection#upsert",
      "memberof": "Mongo.Collection",
      "name": "upsert",
      "options": [
        {
          "description": "<p>True to modify all matching documents; false to only modify one of the matching documents (the default).</p>",
          "name": "multi",
          "type": {
            "names": [
              "Boolean"
            ]
          }
        }
      ],
      "params": [
        {
          "description": "<p>Specifies which documents to modify</p>",
          "name": "selector",
          "type": {
            "names": [
              "MongoSelector"
            ]
          }
        },
        {
          "description": "<p>Specifies how to modify the documents</p>",
          "name": "modifier",
          "type": {
            "names": [
              "MongoModifier"
            ]
          }
        },
        {
          "name": "options",
          "optional": true,
          "type": {
            "names": [
              "Object"
            ]
          }
        },
        {
          "description": "<p>Optional.  If present, called with an error object as the first argument and, if no error, the number of affected documents as the second.</p>",
          "name": "callback",
          "optional": true,
          "type": {
            "names": [
              "function"
            ]
          }
        }
      ],
      "scope": "instance",
      "summary": "Modify one or more documents in the collection, or insert one if no matching documents were found. Returns an object with keys `numberAffected` (the number of documents modified)  and `insertedId` (the unique _id of the document that was inserted, if any)."
    },
    "Mongo.Cursor": {
      "instancename": "cursor",
      "kind": "class",
      "longname": "Mongo.Cursor",
      "memberof": "Mongo",
      "name": "Cursor",
      "options": [],
      "params": [],
      "scope": "static",
      "summary": "To create a cursor, use find. To access the documents in a cursor, use forEach, map, or fetch."
    },
    "Mongo.Cursor#count": {
      "kind": "function",
      "locus": "Anywhere",
      "longname": "Mongo.Cursor#count",
      "memberof": "Mongo.Cursor",
      "name": "count",
      "options": [],
      "params": [],
      "scope": "instance",
      "summary": "Returns the number of documents that match a query."
    },
    "Mongo.Cursor#fetch": {
      "kind": "function",
      "locus": "Anywhere",
      "longname": "Mongo.Cursor#fetch",
      "memberof": "Mongo.Cursor",
      "name": "fetch",
      "options": [],
      "params": [],
      "returns": [
        {
          "type": {
            "names": [
              "Array.<Object>"
            ]
          }
        }
      ],
      "scope": "instance",
      "summary": "Return all matching documents as an Array."
    },
    "Mongo.Cursor#forEach": {
      "kind": "function",
      "locus": "Anywhere",
      "longname": "Mongo.Cursor#forEach",
      "memberof": "Mongo.Cursor",
      "name": "forEach",
      "options": [],
      "params": [
        {
          "description": "<p>Function to call. It will be called with three arguments: the document, a 0-based index, and <em>cursor</em> itself.</p>",
          "name": "callback",
          "type": {
            "names": [
              "function"
            ]
          }
        },
        {
          "description": "<p>An object which will be the value of <code>this</code> inside <code>callback</code>.</p>",
          "name": "thisArg",
          "optional": true,
          "type": {
            "names": [
              "Any"
            ]
          }
        }
      ],
      "scope": "instance",
      "summary": "Call `callback` once for each matching document, sequentially and synchronously."
    },
    "Mongo.Cursor#map": {
      "kind": "function",
      "locus": "Anywhere",
      "longname": "Mongo.Cursor#map",
      "memberof": "Mongo.Cursor",
      "name": "map",
      "options": [],
      "params": [
        {
          "description": "<p>Function to call. It will be called with three arguments: the document, a 0-based index, and <em>cursor</em> itself.</p>",
          "name": "callback",
          "type": {
            "names": [
              "function"
            ]
          }
        },
        {
          "description": "<p>An object which will be the value of <code>this</code> inside <code>callback</code>.</p>",
          "name": "thisArg",
          "optional": true,
          "type": {
            "names": [
              "Any"
            ]
          }
        }
      ],
      "scope": "instance",
      "summary": "Map callback over all matching documents.  Returns an Array."
    },
    "Mongo.Cursor#observe": {
      "kind": "function",
      "locus": "Anywhere",
      "longname": "Mongo.Cursor#observe",
      "memberof": "Mongo.Cursor",
      "name": "observe",
      "options": [],
      "params": [
        {
          "description": "<p>Functions to call to deliver the result set as it changes</p>",
          "name": "callbacks",
          "type": {
            "names": [
              "Object"
            ]
          }
        }
      ],
      "scope": "instance",
      "summary": "Watch a query.  Receive callbacks as the result set changes."
    },
    "Mongo.Cursor#observeChanges": {
      "kind": "function",
      "locus": "Anywhere",
      "longname": "Mongo.Cursor#observeChanges",
      "memberof": "Mongo.Cursor",
      "name": "observeChanges",
      "options": [],
      "params": [
        {
          "description": "<p>Functions to call to deliver the result set as it changes</p>",
          "name": "callbacks",
          "type": {
            "names": [
              "Object"
            ]
          }
        }
      ],
      "scope": "instance",
      "summary": "Watch a query.  Receive callbacks as the result set changes.  Only the differences between the old and new documents are passed to the callbacks."
    },
    "Mongo.ObjectID": {
      "kind": "class",
      "locus": "Anywhere",
      "longname": "Mongo.ObjectID",
      "memberof": "Mongo",
      "name": "ObjectID",
      "options": [],
      "params": [
        {
          "description": "<p>Optional.  The 24-character hexadecimal contents of the ObjectID to create</p>",
          "name": "hexString",
          "type": {
            "names": [
              "String"
            ]
          }
        }
      ],
      "scope": "static",
      "summary": "Create a Mongo-style `ObjectID`.  If you don't specify a `hexString`, the `ObjectID` will generated randomly (not using MongoDB's ID construction rules)."
    },
    "Npm": {
      "kind": "namespace",
      "longname": "Npm",
      "name": "Npm",
      "scope": "global",
      "summary": "The Npm object in package.js and package source files."
    },
    "Npm.depends": {
      "kind": "function",
      "locus": "package.js",
      "longname": "Npm.depends",
      "memberof": "Npm",
      "name": "depends",
      "options": [],
      "params": [
        {
          "description": "<p>An object where the keys are package\nnames and the values are version numbers in string form.\nYou can only depend on exact versions of NPM packages. Example:</p>\n<pre class=\"prettyprint source lang-js\"><code>Npm.depends({moment: &quot;2.8.3&quot;});</code></pre>",
          "name": "dependencies",
          "type": {
            "names": [
              "Object"
            ]
          }
        }
      ],
      "scope": "static",
      "summary": "Specify which [NPM](https://www.npmjs.org/) packages\nyour Meteor package depends on."
    },
    "Npm.require": {
      "kind": "function",
      "locus": "Server",
      "longname": "Npm.require",
      "memberof": "Npm",
      "name": "require",
      "options": [],
      "params": [
        {
          "description": "<p>The name of the package to require.</p>",
          "name": "name",
          "type": {
            "names": [
              "String"
            ]
          }
        }
      ],
      "scope": "static",
      "summary": "Require a package that was specified using\n`Npm.depends()`."
    },
    "Package": {
      "kind": "namespace",
      "locus": "package.js",
      "longname": "Package",
      "name": "Package",
      "scope": "global",
      "summary": "The Package object in package.js"
    },
    "Package.describe": {
      "kind": "function",
      "locus": "package.js",
      "longname": "Package.describe",
      "memberof": "Package",
      "name": "describe",
      "options": [
        {
          "description": "<p>A concise 1-2 sentence description of\nthe package, required for publication.</p>",
          "name": "summary",
          "type": {
            "names": [
              "String"
            ]
          }
        },
        {
          "description": "<p>The (extended)\n<a href=\"http://www.semver.org\">semver</a> version for your package. Additionally,\nMeteor allows a wrap number: a positive integer that follows the\nversion number. If you are porting another package that uses semver\nversioning, you may want to use the original version, postfixed with\n<code>_wrapnumber</code>. For example, <code>1.2.3_1</code> or <code>2.4.5-rc1_4</code>. Wrap numbers\nsort after the original numbers: <code>1.2.3</code> &lt; <code>1.2.3_1</code> &lt; <code>1.2.3_2</code> &lt;\n<code>1.2.4-rc.0</code>. If no version is specified, this field defaults to\n<code>0.0.0</code>. If you want to publish your package to the package server, you\nmust specify a version.</p>",
          "name": "version",
          "type": {
            "names": [
              "String"
            ]
          }
        },
        {
          "description": "<p>Optional name override. By default, the\npackage name comes from the name of its directory.</p>",
          "name": "name",
          "type": {
            "names": [
              "String"
            ]
          }
        },
        {
          "description": "<p>Optional Git URL to the source repository.</p>",
          "name": "git",
          "type": {
            "names": [
              "String"
            ]
          }
        },
        {
          "description": "<p>Optional Filepath to\ndocumentation. Set to 'README.md' by default. Set this to null to submit\nno documentation.</p>",
          "name": "documentation",
          "type": {
            "names": [
              "String"
            ]
          }
        }
      ],
      "params": [
        {
          "name": "options",
          "type": {
            "names": [
              "Object"
            ]
          }
        }
      ],
      "scope": "static",
      "summary": "Provide basic package information."
    },
    "Package.onTest": {
      "kind": "function",
      "locus": "package.js",
      "longname": "Package.onTest",
      "memberof": "Package",
      "name": "onTest",
      "options": [],
      "params": [
        {
          "description": "<p>A function that takes in the package control 'api' object, which keeps track of dependencies and exports.</p>",
          "name": "func",
          "type": {
            "names": [
              "function"
            ]
          }
        }
      ],
      "scope": "static",
      "summary": "Define dependencies and expose package methods for unit tests."
    },
    "Package.onUse": {
      "kind": "function",
      "locus": "package.js",
      "longname": "Package.onUse",
      "memberof": "Package",
      "name": "onUse",
      "options": [],
      "params": [
        {
          "description": "<p>A function that takes in the package control <code>api</code> object, which keeps track of dependencies and exports.</p>",
          "name": "func",
          "type": {
            "names": [
              "function"
            ]
          }
        }
      ],
      "scope": "static",
      "summary": "Define package dependencies and expose package methods."
    },
    "Package.registerBuildPlugin": {
      "kind": "function",
      "locus": "package.js",
      "longname": "Package.registerBuildPlugin",
      "memberof": "Package",
      "name": "registerBuildPlugin",
      "options": [
        {
          "description": "<p>A cosmetic name, must be unique in the\npackage.</p>",
          "name": "name",
          "type": {
            "names": [
              "String"
            ]
          }
        },
        {
          "description": "<p>Meteor packages that this\nplugin uses, independent of the packages specified in\n<a href=\"#pack_onUse\">api.onUse</a>.</p>",
          "name": "use",
          "type": {
            "names": [
              "String",
              "Array.<String>"
            ]
          }
        },
        {
          "description": "<p>The source files that make up the\nbuild plugin, independent from <a href=\"#pack_addFiles\">api.addFiles</a>.</p>",
          "name": "sources",
          "type": {
            "names": [
              "Array.<String>"
            ]
          }
        },
        {
          "description": "<p>An object where the keys\nare NPM package names, and the keys are the version numbers of\nrequired NPM packages, just like in <a href=\"#Npm-depends\">Npm.depends</a>.</p>",
          "name": "npmDependencies",
          "type": {
            "names": [
              "Object"
            ]
          }
        }
      ],
      "params": [
        {
          "name": "options",
          "optional": true,
          "type": {
            "names": [
              "Object"
            ]
          }
        }
      ],
      "scope": "static",
      "summary": "Define a build plugin. A build plugin extends the build\nprocess for apps and packages that use this package. For example,\nthe `coffeescript` package uses a build plugin to compile CoffeeScript\nsource files into JavaScript."
    },
    "PackageAPI": {
      "instancename": "api",
      "kind": "class",
      "longname": "PackageAPI",
      "name": "PackageAPI",
      "options": [],
      "params": [],
      "scope": "global",
      "summary": "Type of the API object passed into the `Package.onUse` function."
    },
    "PackageAPI#addFiles": {
      "kind": "function",
      "locus": "package.js",
      "longname": "PackageAPI#addFiles",
      "memberof": "PackageAPI",
      "name": "addFiles",
      "options": [],
      "params": [
        {
          "description": "<p>Name of the source file, or array of strings of source file names.</p>",
          "name": "filename",
          "type": {
            "names": [
              "String",
              "Array.<String>"
            ]
          }
        },
        {
          "description": "<p>If you only want to export the file\non the server (or the client), you can pass in the second argument\n(e.g., 'server', 'client', 'web.browser', 'web.cordova') to specify\nwhat architecture the file is used with.</p>",
          "name": "architecture",
          "optional": true,
          "type": {
            "names": [
              "String"
            ]
          }
        }
      ],
      "scope": "instance",
      "summary": "Specify the source code for your package."
    },
    "PackageAPI#export": {
      "kind": "function",
      "locus": "package.js",
      "longname": "PackageAPI#export",
      "memberof": "PackageAPI",
      "name": "export",
      "options": [],
      "params": [
        {
          "description": "<p>Name of the object.</p>",
          "name": "exportedObject",
          "type": {
            "names": [
              "String"
            ]
          }
        },
        {
          "description": "<p>If you only want to export the object\non the server (or the client), you can pass in the second argument\n(e.g., 'server', 'client', 'web.browser', 'web.cordova') to specify\nwhat architecture the export is used with.</p>",
          "name": "architecture",
          "optional": true,
          "type": {
            "names": [
              "String"
            ]
          }
        }
      ],
      "scope": "instance",
      "summary": "Export package-level variables in your package. The specified variables (declared without `var` in the source code) will be available to packages that use this package."
    },
    "PackageAPI#imply": {
      "kind": "function",
      "locus": "package.js",
      "longname": "PackageAPI#imply",
      "memberof": "PackageAPI",
      "name": "imply",
      "options": [],
      "params": [
        {
          "description": "<p>Name of a package, or array of package names, with an optional @version component for each.</p>",
          "name": "packageSpecs",
          "type": {
            "names": [
              "String",
              "Array.<String>"
            ]
          }
        }
      ],
      "scope": "instance",
      "summary": "Give users of this package access to another package (by passing  in the string `packagename`) or a collection of packages (by passing in an  array of strings [`packagename1`, `packagename2`]"
    },
    "PackageAPI#use": {
      "kind": "function",
      "locus": "package.js",
      "longname": "PackageAPI#use",
      "memberof": "PackageAPI",
      "name": "use",
      "options": [
        {
          "description": "<p>Establish a weak dependency on a\npackage. If package A has a weak dependency on package B, it means\nthat including A in an app does not force B to be included too — but,\nif B is included or by another package, then B will load before A.\nYou can use this to make packages that optionally integrate with or\nenhance other packages if those packages are present.\nWhen you weakly depend on a package you don't see its exports.\nYou can detect if the possibly-present weakly-depended-on package\nis there by seeing if <code>Package.foo</code> exists, and get its exports\nfrom the same place.</p>",
          "name": "weak",
          "type": {
            "names": [
              "Boolean"
            ]
          }
        },
        {
          "description": "<p>It's okay to load this dependency\nafter your package. (In general, dependencies specified by <code>api.use</code>\nare loaded before your package.) You can use this option to break\ncircular dependencies.</p>",
          "name": "unordered",
          "type": {
            "names": [
              "Boolean"
            ]
          }
        }
      ],
      "params": [
        {
          "description": "<p>Packages being depended on.\nPackage names may be suffixed with an @version tag.</p>\n<p>In general, you must specify a package's version (e.g.,\n<code>'accounts@1.0.0'</code> to use version 1.0.0 or a higher\ncompatible version (ex: 1.0.1, 1.5.0, etc.)  of the\n<code>accounts</code> package). If you are sourcing core\npackages from a Meteor release with <code>versionsFrom</code>, you may leave\noff version names for core packages. You may also specify constraints,\nsuch as <code>my:forms@=1.0.0</code> (this package demands <code>my:forms</code> at <code>1.0.0</code> exactly),\nor <code>my:forms@1.0.0 || =2.0.1</code> (<code>my:forms</code> at <code>1.x.y</code>, or exactly <code>2.0.1</code>).</p>",
          "name": "packageNames",
          "type": {
            "names": [
              "String",
              "Array.<String>"
            ]
          }
        },
        {
          "description": "<p>If you only use the package on the\nserver (or the client), you can pass in the second argument (e.g.,\n<code>'server'</code>, <code>'client'</code>, <code>'web.browser'</code>, <code>'web.cordova'</code>) to specify\nwhat architecture the package is used with.</p>",
          "name": "architecture",
          "optional": true,
          "type": {
            "names": [
              "String"
            ]
          }
        },
        {
          "name": "options",
          "optional": true,
          "type": {
            "names": [
              "Object"
            ]
          }
        }
      ],
      "scope": "instance",
      "summary": "Depend on package `packagename`."
    },
    "PackageAPI#versionsFrom": {
      "kind": "function",
      "locus": "package.js",
      "longname": "PackageAPI#versionsFrom",
      "memberof": "PackageAPI",
      "name": "versionsFrom",
      "options": [],
      "params": [
        {
          "description": "<p>Specification of a release: track@version. Just 'version' (e.g. <code>&quot;0.9.0&quot;</code>) is sufficient if using the default release track <code>METEOR</code>.</p>",
          "name": "meteorRelease",
          "type": {
            "names": [
              "String",
              "Array.<String>"
            ]
          }
        }
      ],
      "scope": "instance",
      "summary": "Use versions of core packages from a release. Unless provided, all packages will default to the versions released along with `meteorRelease`. This will save you from having to figure out the exact versions of the core packages you want to use. For example, if the newest release of meteor is `METEOR@0.9.0` and it includes `jquery@1.0.0`, you can write `api.versionsFrom('METEOR@0.9.0')` in your package, and when you later write `api.use('jquery')`, it will be equivalent to `api.use('jquery@1.0.0')`. You may specify an array of multiple releases, in which case the default value for constraints will be the \"or\" of the versions from each release: `api.versionsFrom(['METEOR@0.9.0', 'METEOR@0.9.5'])` may cause `api.use('jquery')` to be interpreted as `api.use('jquery@1.0.0 || 2.0.0')`."
    },
    "Plugin": {
      "kind": "namespace",
      "longname": "Plugin",
      "name": "Plugin",
      "scope": "global",
      "summary": "The namespace that is exposed inside build plugin files."
    },
    "Plugin.registerSourceHandler": {
      "kind": "function",
      "locus": "Build Plugin",
      "longname": "Plugin.registerSourceHandler",
      "memberof": "Plugin",
      "name": "registerSourceHandler",
      "options": [],
      "params": [
        {
          "description": "<p>The file extension that this plugin\nshould handle, without the first dot.\nExamples: <code>&quot;coffee&quot;</code>, <code>&quot;coffee.md&quot;</code>.</p>",
          "name": "fileExtension",
          "type": {
            "names": [
              "String"
            ]
          }
        },
        {
          "description": "<p>A function that takes one argument,\na CompileStep object.</p>\n<p>Documentation for CompileStep is available <a href=\"https://github.com/meteor/meteor/wiki/CompileStep-API-for-Build-Plugin-Source-Handlers\">on the GitHub Wiki</a>.</p>",
          "name": "handler",
          "type": {
            "names": [
              "function"
            ]
          }
        }
      ],
      "scope": "static",
      "summary": "Inside a build plugin source file specified in\n[Package.registerBuildPlugin](#Package-registerBuildPlugin),\nadd a handler to compile files with a certain file extension."
    },
    "ReactiveVar": {
      "instancename": "reactiveVar",
      "kind": "class",
      "locus": "Client",
      "longname": "ReactiveVar",
      "name": "ReactiveVar",
      "options": [],
      "params": [
        {
          "description": "<p>The initial value to set.  <code>equalsFunc</code> is ignored when setting the initial value.</p>",
          "name": "initialValue",
          "type": {
            "names": [
              "Any"
            ]
          }
        },
        {
          "description": "<p>Optional.  A function of two arguments, called on the old value and the new value whenever the ReactiveVar is set.  If it returns true, no set is performed.  If omitted, the default <code>equalsFunc</code> returns true if its arguments are <code>===</code> and are of type number, boolean, string, undefined, or null.</p>",
          "name": "equalsFunc",
          "optional": true,
          "type": {
            "names": [
              "function"
            ]
          }
        }
      ],
      "scope": "global",
      "summary": "Constructor for a ReactiveVar, which represents a single reactive variable."
    },
    "ReactiveVar#get": {
      "kind": "function",
      "locus": "Client",
      "longname": "ReactiveVar#get",
      "memberof": "ReactiveVar",
      "name": "get",
      "options": [],
      "params": [],
      "scope": "instance",
      "summary": "Returns the current value of the ReactiveVar, establishing a reactive dependency."
    },
    "ReactiveVar#set": {
      "kind": "function",
      "locus": "Client",
      "longname": "ReactiveVar#set",
      "memberof": "ReactiveVar",
      "name": "set",
      "options": [],
      "params": [
        {
          "name": "newValue",
          "type": {
            "names": [
              "Any"
            ]
          }
        }
      ],
      "scope": "instance",
      "summary": "Sets the current value of the ReactiveVar, invalidating the Computations that called `get` if `newValue` is different from the old value."
    },
    "Session.equals": {
      "kind": "function",
      "locus": "Client",
      "longname": "Session.equals",
      "memberof": "Session",
      "name": "equals",
      "options": [],
      "params": [
        {
          "description": "<p>The name of the session variable to test</p>",
          "name": "key",
          "type": {
            "names": [
              "String"
            ]
          }
        },
        {
          "description": "<p>The value to\ntest against</p>",
          "name": "value",
          "type": {
            "names": [
              "String",
              "Number",
              "Boolean",
              "null",
              "undefined"
            ]
          }
        }
      ],
      "scope": "static",
      "summary": "Test if a session variable is equal to a value. If inside a\n[reactive computation](#reactivity), invalidate the computation the next\ntime the variable changes to or from the value."
    },
    "Session.get": {
      "kind": "function",
      "locus": "Client",
      "longname": "Session.get",
      "memberof": "Session",
      "name": "get",
      "options": [],
      "params": [
        {
          "description": "<p>The name of the session variable to return</p>",
          "name": "key",
          "type": {
            "names": [
              "String"
            ]
          }
        }
      ],
      "scope": "static",
      "summary": "Get the value of a session variable. If inside a [reactive\ncomputation](#reactivity), invalidate the computation the next time the\nvalue of the variable is changed by [`Session.set`](#session_set). This\nreturns a clone of the session value, so if it's an object or an array,\nmutating the returned value has no effect on the value stored in the\nsession."
    },
    "Session.set": {
      "kind": "function",
      "locus": "Client",
      "longname": "Session.set",
      "memberof": "Session",
      "name": "set",
      "options": [],
      "params": [
        {
          "description": "<p>The key to set, eg, <code>selectedItem</code></p>",
          "name": "key",
          "type": {
            "names": [
              "String"
            ]
          }
        },
        {
          "description": "<p>The new value for <code>key</code></p>",
          "name": "value",
          "type": {
            "names": [
              "EJSONable",
              "undefined"
            ]
          }
        }
      ],
      "scope": "static",
      "summary": "Set a variable in the session. Notify any listeners that the value\nhas changed (eg: redraw templates, and rerun any\n[`Tracker.autorun`](#tracker_autorun) computations, that called\n[`Session.get`](#session_get) on this `key`.)"
    },
    "Session.setDefault": {
      "kind": "function",
      "locus": "Client",
      "longname": "Session.setDefault",
      "memberof": "Session",
      "name": "setDefault",
      "options": [],
      "params": [
        {
          "description": "<p>The key to set, eg, <code>selectedItem</code></p>",
          "name": "key",
          "type": {
            "names": [
              "String"
            ]
          }
        },
        {
          "description": "<p>The new value for <code>key</code></p>",
          "name": "value",
          "type": {
            "names": [
              "EJSONable",
              "undefined"
            ]
          }
        }
      ],
      "scope": "static",
      "summary": "Set a variable in the session if it hasn't been set before.\nOtherwise works exactly the same as [`Session.set`](#session_set)."
    },
    "Subscription": {
      "instancename": "this",
      "kind": "class",
      "longname": "Subscription",
      "name": "Subscription",
      "options": [],
      "params": [],
      "summary": "The server's side of a subscription"
    },
    "Subscription#added": {
      "kind": "function",
      "locus": "Server",
      "longname": "Subscription#added",
      "memberof": "Subscription",
      "name": "added",
      "options": [],
      "params": [
        {
          "description": "<p>The name of the collection that contains the new document.</p>",
          "name": "collection",
          "type": {
            "names": [
              "String"
            ]
          }
        },
        {
          "description": "<p>The new document's ID.</p>",
          "name": "id",
          "type": {
            "names": [
              "String"
            ]
          }
        },
        {
          "description": "<p>The fields in the new document.  If <code>_id</code> is present it is ignored.</p>",
          "name": "fields",
          "type": {
            "names": [
              "Object"
            ]
          }
        }
      ],
      "scope": "instance",
      "summary": "Call inside the publish function.  Informs the subscriber that a document has been added to the record set."
    },
    "Subscription#changed": {
      "kind": "function",
      "locus": "Server",
      "longname": "Subscription#changed",
      "memberof": "Subscription",
      "name": "changed",
      "options": [],
      "params": [
        {
          "description": "<p>The name of the collection that contains the changed document.</p>",
          "name": "collection",
          "type": {
            "names": [
              "String"
            ]
          }
        },
        {
          "description": "<p>The changed document's ID.</p>",
          "name": "id",
          "type": {
            "names": [
              "String"
            ]
          }
        },
        {
          "description": "<p>The fields in the document that have changed, together with their new values.  If a field is not present in <code>fields</code> it was left unchanged; if it is present in <code>fields</code> and has a value of <code>undefined</code> it was removed from the document.  If <code>_id</code> is present it is ignored.</p>",
          "name": "fields",
          "type": {
            "names": [
              "Object"
            ]
          }
        }
      ],
      "scope": "instance",
      "summary": "Call inside the publish function.  Informs the subscriber that a document in the record set has been modified."
    },
    "Subscription#connection": {
      "kind": "member",
      "locus": "Server",
      "longname": "Subscription#connection",
      "memberof": "Subscription",
      "name": "connection",
      "scope": "instance",
      "summary": "Access inside the publish function. The incoming [connection](#meteor_onconnection) for this subscription."
    },
    "Subscription#error": {
      "kind": "function",
      "locus": "Server",
      "longname": "Subscription#error",
      "memberof": "Subscription",
      "name": "error",
      "options": [],
      "params": [
        {
          "description": "<p>The error to pass to the client.</p>",
          "name": "error",
          "type": {
            "names": [
              "Error"
            ]
          }
        }
      ],
      "scope": "instance",
      "summary": "Call inside the publish function.  Stops this client's subscription, triggering a call on the client to the `onStop` callback passed to [`Meteor.subscribe`](#meteor_subscribe), if any. If `error` is not a [`Meteor.Error`](#meteor_error), it will be [sanitized](#meteor_error)."
    },
    "Subscription#onStop": {
      "kind": "function",
      "locus": "Server",
      "longname": "Subscription#onStop",
      "memberof": "Subscription",
      "name": "onStop",
      "options": [],
      "params": [
        {
          "description": "<p>The callback function</p>",
          "name": "func",
          "type": {
            "names": [
              "function"
            ]
          }
        }
      ],
      "scope": "instance",
      "summary": "Call inside the publish function.  Registers a callback function to run when the subscription is stopped."
    },
    "Subscription#ready": {
      "kind": "function",
      "locus": "Server",
      "longname": "Subscription#ready",
      "memberof": "Subscription",
      "name": "ready",
      "options": [],
      "params": [],
      "scope": "instance",
      "summary": "Call inside the publish function.  Informs the subscriber that an initial, complete snapshot of the record set has been sent.  This will trigger a call on the client to the `onReady` callback passed to  [`Meteor.subscribe`](#meteor_subscribe), if any."
    },
    "Subscription#removed": {
      "kind": "function",
      "locus": "Server",
      "longname": "Subscription#removed",
      "memberof": "Subscription",
      "name": "removed",
      "options": [],
      "params": [
        {
          "description": "<p>The name of the collection that the document has been removed from.</p>",
          "name": "collection",
          "type": {
            "names": [
              "String"
            ]
          }
        },
        {
          "description": "<p>The ID of the document that has been removed.</p>",
          "name": "id",
          "type": {
            "names": [
              "String"
            ]
          }
        }
      ],
      "scope": "instance",
      "summary": "Call inside the publish function.  Informs the subscriber that a document has been removed from the record set."
    },
    "Subscription#stop": {
      "kind": "function",
      "locus": "Server",
      "longname": "Subscription#stop",
      "memberof": "Subscription",
      "name": "stop",
      "options": [],
      "params": [],
      "scope": "instance",
      "summary": "Call inside the publish function.  Stops this client's subscription and invokes the client's `onStop` callback with no error."
    },
    "Subscription#userId": {
      "kind": "member",
      "locus": "Server",
      "longname": "Subscription#userId",
      "memberof": "Subscription",
      "name": "userId",
      "scope": "instance",
      "summary": "Access inside the publish function. The id of the logged-in user, or `null` if no user is logged in."
    },
    "Template": {
      "instancename": "Template.myTemplate",
      "kind": "class",
      "longname": "Template",
      "name": "Template",
      "options": [],
      "params": [],
      "scope": "global",
      "summary": "The class for defining templates"
    },
    "Template#created": {
      "deprecated": "in 1.1",
      "kind": "member",
      "locus": "Client",
      "longname": "Template#created",
      "memberof": "Template",
      "name": "created",
      "scope": "instance",
      "summary": "Provide a callback when an instance of a template is created."
    },
    "Template#destroyed": {
      "deprecated": "in 1.1",
      "kind": "member",
      "locus": "Client",
      "longname": "Template#destroyed",
      "memberof": "Template",
      "name": "destroyed",
      "scope": "instance",
      "summary": "Provide a callback when an instance of a template is destroyed."
    },
    "Template#events": {
      "kind": "function",
      "locus": "Client",
      "longname": "Template#events",
      "memberof": "Template",
      "name": "events",
      "options": [],
      "params": [
        {
          "description": "<p>Event handlers to associate with this template.</p>",
          "name": "eventMap",
          "type": {
            "names": [
              "EventMap"
            ]
          }
        }
      ],
      "scope": "instance",
      "summary": "Specify event handlers for this template."
    },
    "Template#helpers": {
      "kind": "function",
      "locus": "Client",
      "longname": "Template#helpers",
      "memberof": "Template",
      "name": "helpers",
      "options": [],
      "params": [
        {
          "description": "<p>Dictionary of helper functions by name.</p>",
          "name": "helpers",
          "type": {
            "names": [
              "Object"
            ]
          }
        }
      ],
      "scope": "instance",
      "summary": "Specify template helpers available to this template."
    },
    "Template#onCreated": {
      "kind": "member",
      "locus": "Client",
      "longname": "Template#onCreated",
      "memberof": "Template",
      "name": "onCreated",
      "params": [
        {
          "description": "<p>A function to be added as a callback.</p>",
          "name": "callback",
          "type": {
            "names": [
              "function"
            ]
          }
        }
      ],
      "scope": "instance",
      "summary": "Register a function to be called when an instance of this template is created."
    },
    "Template#onDestroyed": {
      "kind": "member",
      "locus": "Client",
      "longname": "Template#onDestroyed",
      "memberof": "Template",
      "name": "onDestroyed",
      "params": [
        {
          "description": "<p>A function to be added as a callback.</p>",
          "name": "callback",
          "type": {
            "names": [
              "function"
            ]
          }
        }
      ],
      "scope": "instance",
      "summary": "Register a function to be called when an instance of this template is removed from the DOM and destroyed."
    },
    "Template#onRendered": {
      "kind": "member",
      "locus": "Client",
      "longname": "Template#onRendered",
      "memberof": "Template",
      "name": "onRendered",
      "params": [
        {
          "description": "<p>A function to be added as a callback.</p>",
          "name": "callback",
          "type": {
            "names": [
              "function"
            ]
          }
        }
      ],
      "scope": "instance",
      "summary": "Register a function to be called when an instance of this template is inserted into the DOM."
    },
    "Template#rendered": {
      "deprecated": "in 1.1",
      "kind": "member",
      "locus": "Client",
      "longname": "Template#rendered",
      "memberof": "Template",
      "name": "rendered",
      "scope": "instance",
      "summary": "Provide a callback when an instance of a template is rendered."
    },
    "Template.body": {
      "kind": "member",
      "locus": "Client",
      "longname": "Template.body",
      "memberof": "Template",
      "name": "body",
      "scope": "static",
      "summary": "The [template object](#templates_api) representing your `<body>`\ntag."
    },
    "Template.currentData": {
      "kind": "function",
      "locus": "Client",
      "longname": "Template.currentData",
      "memberof": "Template",
      "name": "currentData",
      "options": [],
      "params": [],
      "scope": "static",
      "summary": "- Inside an `onCreated`, `onRendered`, or `onDestroyed` callback, returns\nthe data context of the template.\n- Inside a helper, returns the data context of the DOM node where the helper\nwas used.\n- Inside an event handler, returns the data context of the element that fired\nthe event.\n\nEstablishes a reactive dependency on the result."
    },
    "Template.dynamic": {
      "istemplate": "true",
      "kind": "function",
      "locus": "Templates",
      "longname": "Template.dynamic",
      "memberof": "Template",
      "name": "dynamic",
      "options": [],
      "params": [
        {
          "description": "<p>The name of the template to include.</p>",
          "name": "template",
          "type": {
            "names": [
              "String"
            ]
          }
        },
        {
          "description": "<p>Optional. The data context in which to include the template.</p>",
          "name": "data",
          "optional": true,
          "type": {
            "names": [
              "Object"
            ]
          }
        }
      ],
      "scope": "static",
      "summary": "Choose a template to include dynamically, by name."
    },
    "Template.instance": {
      "kind": "function",
      "locus": "Client",
      "longname": "Template.instance",
      "memberof": "Template",
      "name": "instance",
      "options": [],
      "params": [],
      "returns": [
        {
          "description": "<p>Blaze.TemplateInstance</p>"
        }
      ],
      "scope": "static",
      "summary": "The [template instance](#template_inst) corresponding to the current template helper, event handler, callback, or autorun.  If there isn't one, `null`."
    },
    "Template.parentData": {
      "kind": "function",
      "locus": "Client",
      "longname": "Template.parentData",
      "memberof": "Template",
      "name": "parentData",
      "options": [],
      "params": [
        {
          "description": "<p>The number of levels beyond the current data context to look. Defaults to 1.</p>",
          "name": "numLevels",
          "optional": true,
          "type": {
            "names": [
              "Integer"
            ]
          }
        }
      ],
      "scope": "static",
      "summary": "Accesses other data contexts that enclose the current data context."
    },
    "Template.registerHelper": {
      "kind": "function",
      "locus": "Client",
      "longname": "Template.registerHelper",
      "memberof": "Template",
      "name": "registerHelper",
      "options": [],
      "params": [
        {
          "description": "<p>The name of the helper function you are defining.</p>",
          "name": "name",
          "type": {
            "names": [
              "String"
            ]
          }
        },
        {
          "description": "<p>The helper function itself.</p>",
          "name": "function",
          "type": {
            "names": [
              "function"
            ]
          }
        }
      ],
      "scope": "static",
      "summary": "Defines a [helper function](#template_helpers) which can be used from all templates."
    },
    "Tracker": {
      "kind": "namespace",
      "longname": "Tracker",
      "name": "Tracker",
      "summary": "The namespace for Tracker-related methods."
    },
    "Tracker.Computation": {
      "instancename": "computation",
      "kind": "function",
      "longname": "Tracker.Computation",
      "memberof": "Tracker",
      "name": "Computation",
      "options": [],
      "params": [],
      "scope": "static",
      "summary": "A Computation object represents code that is repeatedly rerun\nin response to\nreactive data changes. Computations don't have return values; they just\nperform actions, such as rerendering a template on the screen. Computations\nare created using Tracker.autorun. Use stop to prevent further rerunning of a\ncomputation."
    },
    "Tracker.Computation#firstRun": {
      "kind": "member",
      "locus": "Client",
      "longname": "Tracker.Computation#firstRun",
      "memberof": "Tracker.Computation",
      "name": "firstRun",
      "scope": "instance",
      "summary": "True during the initial run of the computation at the time `Tracker.autorun` is called, and false on subsequent reruns and at other times.",
      "type": {
        "names": [
          "Boolean"
        ]
      }
    },
    "Tracker.Computation#invalidate": {
      "kind": "function",
      "locus": "Client",
      "longname": "Tracker.Computation#invalidate",
      "memberof": "Tracker.Computation",
      "name": "invalidate",
      "options": [],
      "params": [],
      "scope": "instance",
      "summary": "Invalidates this computation so that it will be rerun."
    },
    "Tracker.Computation#invalidated": {
      "kind": "member",
      "locus": "Client",
      "longname": "Tracker.Computation#invalidated",
      "memberof": "Tracker.Computation",
      "name": "invalidated",
      "scope": "instance",
      "summary": "True if this computation has been invalidated (and not yet rerun), or if it has been stopped.",
      "type": {
        "names": [
          "Boolean"
        ]
      }
    },
    "Tracker.Computation#onInvalidate": {
      "kind": "function",
      "locus": "Client",
      "longname": "Tracker.Computation#onInvalidate",
      "memberof": "Tracker.Computation",
      "name": "onInvalidate",
      "options": [],
      "params": [
        {
          "description": "<p>Function to be called on invalidation. Receives one argument, the computation that was invalidated.</p>",
          "name": "callback",
          "type": {
            "names": [
              "function"
            ]
          }
        }
      ],
      "scope": "instance",
      "summary": "Registers `callback` to run when this computation is next invalidated, or runs it immediately if the computation is already invalidated.  The callback is run exactly once and not upon future invalidations unless `onInvalidate` is called again after the computation becomes valid again."
    },
    "Tracker.Computation#stop": {
      "kind": "function",
      "locus": "Client",
      "longname": "Tracker.Computation#stop",
      "memberof": "Tracker.Computation",
      "name": "stop",
      "options": [],
      "params": [],
      "scope": "instance",
      "summary": "Prevents this computation from rerunning."
    },
    "Tracker.Computation#stopped": {
      "kind": "member",
      "locus": "Client",
      "longname": "Tracker.Computation#stopped",
      "memberof": "Tracker.Computation",
      "name": "stopped",
      "scope": "instance",
      "summary": "True if this computation has been stopped."
    },
    "Tracker.Dependency": {
      "instancename": "dependency",
      "kind": "class",
      "longname": "Tracker.Dependency",
      "memberof": "Tracker",
      "name": "Dependency",
      "options": [],
      "params": [],
      "scope": "static",
      "summary": "A Dependency represents an atomic unit of reactive data that a\ncomputation might depend on. Reactive data sources such as Session or\nMinimongo internally create different Dependency objects for different\npieces of data, each of which may be depended on by multiple computations.\nWhen the data changes, the computations are invalidated."
    },
    "Tracker.Dependency#changed": {
      "kind": "function",
      "locus": "Client",
      "longname": "Tracker.Dependency#changed",
      "memberof": "Tracker.Dependency",
      "name": "changed",
      "options": [],
      "params": [],
      "scope": "instance",
      "summary": "Invalidate all dependent computations immediately and remove them as dependents."
    },
    "Tracker.Dependency#depend": {
      "kind": "function",
      "locus": "Client",
      "longname": "Tracker.Dependency#depend",
      "memberof": "Tracker.Dependency",
      "name": "depend",
      "options": [],
      "params": [
        {
          "description": "<p>An optional computation declared to depend on <code>dependency</code> instead of the current computation.</p>",
          "name": "fromComputation",
          "optional": true,
          "type": {
            "names": [
              "Tracker.Computation"
            ]
          }
        }
      ],
      "returns": [
        {
          "type": {
            "names": [
              "Boolean"
            ]
          }
        }
      ],
      "scope": "instance",
      "summary": "Declares that the current computation (or `fromComputation` if given) depends on `dependency`.  The computation will be invalidated the next time `dependency` changes.\n\nIf there is no current computation and `depend()` is called with no arguments, it does nothing and returns false.\n\nReturns true if the computation is a new dependent of `dependency` rather than an existing one."
    },
    "Tracker.Dependency#hasDependents": {
      "kind": "function",
      "locus": "Client",
      "longname": "Tracker.Dependency#hasDependents",
      "memberof": "Tracker.Dependency",
      "name": "hasDependents",
      "options": [],
      "params": [],
      "returns": [
        {
          "type": {
            "names": [
              "Boolean"
            ]
          }
        }
      ],
      "scope": "instance",
      "summary": "True if this Dependency has one or more dependent Computations, which would be invalidated if this Dependency were to change."
    },
    "Tracker.active": {
      "kind": "member",
      "locus": "Client",
      "longname": "Tracker.active",
      "memberof": "Tracker",
      "name": "active",
      "scope": "static",
      "summary": "True if there is a current computation, meaning that dependencies on reactive data sources will be tracked and potentially cause the current computation to be rerun.",
      "type": {
        "names": [
          "Boolean"
        ]
      }
    },
    "Tracker.afterFlush": {
      "kind": "function",
      "locus": "Client",
      "longname": "Tracker.afterFlush",
      "memberof": "Tracker",
      "name": "afterFlush",
      "options": [],
      "params": [
        {
          "description": "<p>A function to call at flush time.</p>",
          "name": "callback",
          "type": {
            "names": [
              "function"
            ]
          }
        }
      ],
      "scope": "static",
      "summary": "Schedules a function to be called during the next flush, or later in the current flush if one is in progress, after all invalidated computations have been rerun.  The function will be run once and not on subsequent flushes unless `afterFlush` is called again."
    },
    "Tracker.autorun": {
      "kind": "function",
      "locus": "Client",
      "longname": "Tracker.autorun",
      "memberof": "Tracker",
      "name": "autorun",
      "options": [],
      "params": [
        {
          "description": "<p>The function to run. It receives one argument: the Computation object that will be returned.</p>",
          "name": "runFunc",
          "type": {
            "names": [
              "function"
            ]
          }
        }
      ],
      "returns": [
        {
          "type": {
            "names": [
              "Tracker.Computation"
            ]
          }
        }
      ],
      "scope": "static",
      "summary": "Run a function now and rerun it later whenever its dependencies change. Returns a Computation object that can be used to stop or observe the rerunning."
    },
    "Tracker.currentComputation": {
      "kind": "member",
      "locus": "Client",
      "longname": "Tracker.currentComputation",
      "memberof": "Tracker",
      "name": "currentComputation",
      "scope": "static",
      "summary": "The current computation, or `null` if there isn't one.  The current computation is the [`Tracker.Computation`](#tracker_computation) object created by the innermost active call to `Tracker.autorun`, and it's the computation that gains dependencies when reactive data sources are accessed.",
      "type": {
        "names": [
          "Tracker.Computation"
        ]
      }
    },
    "Tracker.flush": {
      "kind": "function",
      "locus": "Client",
      "longname": "Tracker.flush",
      "memberof": "Tracker",
      "name": "flush",
      "options": [],
      "params": [],
      "scope": "static",
      "summary": "Process all reactive updates immediately and ensure that all invalidated computations are rerun."
    },
    "Tracker.nonreactive": {
      "kind": "function",
      "locus": "Client",
      "longname": "Tracker.nonreactive",
      "memberof": "Tracker",
      "name": "nonreactive",
      "options": [],
      "params": [
        {
          "description": "<p>A function to call immediately.</p>",
          "name": "func",
          "type": {
            "names": [
              "function"
            ]
          }
        }
      ],
      "scope": "static",
      "summary": "Run a function without tracking dependencies."
    },
    "Tracker.onInvalidate": {
      "kind": "function",
      "locus": "Client",
      "longname": "Tracker.onInvalidate",
      "memberof": "Tracker",
      "name": "onInvalidate",
      "options": [],
      "params": [
        {
          "description": "<p>A callback function that will be invoked as <code>func(c)</code>, where <code>c</code> is the computation on which the callback is registered.</p>",
          "name": "callback",
          "type": {
            "names": [
              "function"
            ]
          }
        }
      ],
      "scope": "static",
      "summary": "Registers a new [`onInvalidate`](#computation_oninvalidate) callback on the current computation (which must exist), to be called immediately when the current computation is invalidated or stopped."
    },
    "check": {
      "kind": "function",
      "locus": "Anywhere",
      "longname": "check",
      "name": "check",
      "options": [],
      "params": [
        {
          "description": "<p>The value to check</p>",
          "name": "value",
          "type": {
            "names": [
              "Any"
            ]
          }
        },
        {
          "description": "<p>The pattern to match\n<code>value</code> against</p>",
          "name": "pattern",
          "type": {
            "names": [
              "MatchPattern"
            ]
          }
        }
      ],
      "scope": "global",
      "summary": "Check that a value matches a [pattern](#matchpatterns).\nIf the value does not match the pattern, throw a `Match.Error`.\n\nParticularly useful to assert that arguments to a function have the right\ntypes and structure."
    },
    "currentUser": {
      "ishelper": "true",
      "kind": "member",
      "longname": "currentUser",
      "name": "currentUser",
      "scope": "global",
      "summary": "Calls [Meteor.user()](#meteor_user). Use `{{#if currentUser}}` to check whether the user is logged in."
    },
    "loggingIn": {
      "ishelper": "true",
      "kind": "member",
      "longname": "loggingIn",
      "name": "loggingIn",
      "scope": "global",
      "summary": "Calls [Meteor.loggingIn()](#meteor_loggingin)."
    }
  };