# ServiceNow SDK Glide type definitions

Contains type declarations for Glide Scriptable APIs to be used in [ServiceNow SDK](https://www.npmjs.com/package/@servicenow/sdk) for API type support in module JS development.

Refer to [ServiceNow documentation](https://www.servicenow.com/docs/bundle/zurich-application-development/page/build/servicenow-sdk/concept/javascript-modules-third-party-libraries.html) for information regarding importing and using Glide APIs via this package.

## Usage

### Install

`npm i -D @servicenow/glide`

The type definitions are exposed under the `@servicenow/glide` module, and are meant to be used during ServiceNow [javascript module development](https://www.servicenow.com/docs/bundle/zurich-application-development/page/build/servicenow-sdk/concept/javascript-modules-third-party-libraries.html)

### Modules

Import from `@servicenow/glide` for ServiceNow scriptables on modules

```typescript
import { gs, GlideRecord } from "@servicenow/glide";

export function showStateUpdate(
  current: GlideRecord<"incident">,
  previous: GlideRecord<"incident">
) {
  const currentState = current.getValue("incident_state");
  const previousState = previous.getValue("incident_state");

  gs.addInfoMessage(
    `state updated from "${previousState}" to "${currentState}"`
  );
}
```

### SDK Dependencies

Using the SDKs `dependencies` [command](https://www.servicenow.com/docs/bundle/zurich-application-development/page/build/servicenow-sdk/reference/servicenow-sdk-cli-commands.html#title_now-sdk-dependencies-command) you can download table type information from your instance for usage on `GlideRecord` (Available in SDK 4.2.0+)

## Support

[ServiceNow SDK and Fluent articles](https://www.servicenow.com/community/servicenow-ide-sdk-and-fluent/tkb-p/ide-sdk-fluent-articles)

[ServiceNow SDK and Fluent forum](https://www.servicenow.com/community/servicenow-ide-sdk-and-fluent/bd-p/ide-sdk-fluent-forum)
