actualNoteContentPart: ## app.evaluateExpression
  Evaluates a string expression, using the same logic used to evaluate in-editor {expressions}.
  Arguments
  	string the expression to evaluate
  Returns
  	string or number result of the expression, or null if the expression is not valid
  ```
  {  async appOption(app) {    const result = await app.evaluateExpression("tomorrow");    await app.alert("Result: " + result);  }} 
  ```
  
  ## app.filterNotes
  Find [noteHandle](/help/developing_amplenote_plugins/appendix_i#noteHandle) s for all notes matching a set of filter criteria.
  Arguments
  	(optional) object describing filter parameters, containing any of the following properties:
  		group - filter group to apply. This corresponds to the group= query string parameter when viewing https://www.amplenote.com/notes and filtering on a specific group or set of groups. Multiple groups can be specified with a , separator.
  		query - String fuzzy search term to filter matching notes on. Note that this is not full-text search, and matches the behavior of note suggestion UI that matches on note names.
  		tag - tag filter to apply. This corresponds to the tag= query string parameter when viewing https://www.amplenote.com/notes and filtering on a specific tag or set of tags. Multiple tags can be specified with a , separator - matching notes must have all specified tags. A tag prefixed with ^ will only match notes that do not have the tag.
  			Examples
  				{ tag: "daily-jots" }
  				{ tag: "daily-jots,todo" } - matches notes that have the daily-jots tag and the todo tag.
  				{ tag: "daily-jots,^todo/next" } - matches notes that have the daily-jots tag and do not have the todo/next tag.
  Returns
  	An array of [noteHandle](/help/developing_amplenote_plugins/appendix_i#noteHandle) s for all notes that match the filter parameters.
  ```
  {  async insertText(app) {    const noteHandles = await app.filterNotes({ tag: "daily-jots" });    return `note count: ${ noteHandles.length }`;  }}
  ```
  
  ## app.findNote
  Returns a [noteHandle](/help/developing_amplenote_plugins/appendix_i#noteHandle)  identifying a note, with additional note metadata attributes populated, if the note is extant and not marked as deleted. In addition to verifying whether a note exists, this can be used to fill in some additional details for a note, e.g. if the plugin only has a noteUUID it can call this to get the name and tags applied to the note.
  Arguments
  	[noteHandle](/help/developing_amplenote_plugins/appendix_i#noteHandle)  identifying the note to find, considering the following attributes:
  		uuid the UUID identifying a specific note - if provided, the other attributes will be ignored.
  		name String name of the note to find. If uuid is not provided, this must be supplied.
  		tags optional Array of tag filter Strings that the note must match, in addition to the name. Each array entry can be the name of a tag e.g. [ "some-tag" ] or can include a negation operator to only match notes that don't have that tag, e.g. [ "^not-this-tag" ]
  Returns
  	[noteHandle](/help/developing_amplenote_plugins/appendix_i#noteHandle)  of the note, or null if the note does not exist or has been marked as deleted
  ```
  {  async noteOption(app, noteUUID) {    const noteHandle = await app.findNote({ uuid: noteUUID });    app.alert(noteHandle.name);  }}
  ```
processedNoteContent: ---
  title: App Interface: Plugin methods to interact with ...
  headers: ## app.evaluateExpression
  ---
  app.evaluateExpression
  Evaluates a string expression, using the same logic used to evaluate in-editor {expressions}.
  Arguments
  string the expression to evaluate
  Returns
  string or number result of the expression, or null if the expression is not valid {  async appOption(app) {    const result = await app.evaluateExpression("tomorrow");    await app.alert("Result: " + result);  }} 
  
  app.filterNotes
  Find [noteHandle](/help/developing_amplenote_plugins/appendix_i#noteHandle)
   s for all notes matching a set of filter criteria.
  Arguments
  (optional) object describing filter parameters, containing any of the following properties:
  group - filter group to apply. This corresponds to the group= query string parameter when viewing [https://www.amplenote.com/notes](https://www.amplenote.com)`
   and filtering on a specific group or set of groups. Multiple groups can be specified with a , separator.
  query - String fuzzy search term to filter matching notes on. Note that this is not full-text search, and matches the behavior of note suggestion UI that matches on note names.
  tag - tag filter to apply. This corresponds to the tag= query string parameter when viewing [https://www.amplenote.com/notes](https://www.amplenote.com)`
   and filtering on a specific tag or set of tags. Multiple tags can be specified with a , separator - matching notes must have all specified tags. A tag prefixed with ^ will only match notes that do not have the tag.
  Examples
  { tag: "daily-jots" }
  { tag: "daily-jots,todo" } - matches notes that have the daily-jots tag and the todo tag.
  { tag: "daily-jots,^todo/next" } - matches notes that have the daily-jots tag and do not have the todo/next tag.
  Returns
  An array of [noteHandle](/help/developing_amplenote_plugins/appendix_i#noteHandle)
   s for all notes that match the filter parameters. {  async insertText(app) {    const noteHandles = await app.filterNotes({ tag: "daily-jots" });    return `note count: ${ noteHandles.length }`;  }}
  
  app.findNote
  Returns a [noteHandle](/help/developing_amplenote_plugins/appendix_i#noteHandle)
    identifying a note, with additional note metadata attributes populated, if the note is extant and not marked as deleted. In addition to verifying whether a note exists, this can be used to fill in some additional details for a note, e.g. if the plugin only has a noteUUID it can call this to get the name and tags applied to the note.
  Arguments
  [noteHandle](/help/developing_amplenote_plugins/appendix_i#noteHandle)
    identifying the note to find, considering the following attributes:
  uuid the UUID identifying a specific note - if provided, the other attributes will be ignored.
  name String name of the note to find. If uuid is not provided, this must be supplied.
  tags optional Array of tag filter Strings that the note must match, in addition to the name. Each array entry can be the name of a tag e.g. [ "some-tag" ] or can include a negation operator to only match notes that don't have that tag, e.g. [ "^not-this-tag" ]
  Returns
  [noteHandle](/help/developing_amplenote_plugins/appendix_i#noteHandle)
    of the note, or null if the note does not exist or has been marked as deleted {  async noteOption(app, noteUUID) {    const noteHandle = await app.findNote({ uuid: noteUUID });    app.alert(noteHandle.name);  }}
noteTitle: App Interface: Plugin methods to interact with user notes