/**
 * Sentry.io Node - Version 1
 * Discriminator: resource=issue, operation=update
 */


interface Credentials {
  sentryIoOAuth2Api: CredentialReference;
  sentryIoApi: CredentialReference;
  sentryIoServerApi: CredentialReference;
}

/** Update an issue */
export type SentryIoV1IssueUpdateParams = {
  resource: 'issue';
  operation: 'update';
  authentication?: 'accessToken' | 'oAuth2' | 'accessTokenServer' | Expression<string>;
/**
 * ID of issue to get
 */
    issueId?: string | Expression<string> | PlaceholderValue;
/**
 * Update Fields
 * @default {}
 */
    additionalFields?: {
    /** The actor ID (or username) of the user or team that should be assigned to this issue
     */
    assignedTo?: string | Expression<string> | PlaceholderValue;
    /** Whether this API call is invoked with a user context this allows changing of the flag that indicates if the user has seen the event
     * @default true
     */
    hasSeen?: boolean | Expression<boolean>;
    /** Whether this API call is invoked with a user context this allows changing of the bookmark flag
     * @default true
     */
    isBookmarked?: boolean | Expression<boolean>;
    /** Whether to set the issue to public or private
     * @default true
     */
    isPublic?: boolean | Expression<boolean>;
    /** Is Subscribed
     * @default true
     */
    isSubscribed?: boolean | Expression<boolean>;
    /** The new status for the issue
     */
    status?: 'ignored' | 'resolved' | 'resolvedInNextRelease' | 'unresolved' | Expression<string>;
  };
};

export type SentryIoV1IssueUpdateNode = {
  type: 'n8n-nodes-base.sentryIo';
  version: 1;
  credentials?: Credentials;
  config: NodeConfig<SentryIoV1IssueUpdateParams>;
};