[Security Solution] Write additional metadata when generating types using kbn-openapi-generator (#174718)

## Summary

Follow up PR from https://github.com/elastic/kibana/pull/174317 with the
following fixes/enhancements to `kbn-openapi-generator`:

* Fix extraneous `.`'s in paths causing generated files to not be
written to disk
* Updates `README.md` for latest method of adding CI actions
* Adds `info` details to generated metadata comment for more easily
tracing back to source schema
* Moves assistant `*.schema.yaml` files from `elastic_assistant` plugin
to `kbn-elastic-assistant-common` package

> [!NOTE]
> This PR includes a manual run of the `kbn-elastic-assistant-common`
package `yarn openapi:generate` script as a reference example. Since
this PR also updates the generation template to include the `info`
metadata, CI will run the generator for the other consumers
(`security_solution` & `osquery`) automatically, and commit those
updates to this PR. <img width="16"
src="https://user-images.githubusercontent.com/2946766/160040365-b1b8bb8a-d2d7-4187-b9b9-04817f8e2ae5.gif"
/>


### Test instructions

You can test against the `kbn-elastic-assistant-common` package using
either the main CLI script from kibana root:

```
node scripts/generate_openapi --rootDir ./x-pack/packages/kbn-elastic-assistant-common
```

or via the yarn command:

```
cd x-pack/packages/kbn-elastic-assistant-common/
yarn openapi-generate
```


### Checklist

Delete any items that are not applicable to this PR.

- [X]
[Documentation](https://www.elastic.co/guide/en/kibana/master/development-documentation.html)
was added for features that require explanation or tutorials

---------

Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
This commit is contained in:
Garrett Spong 2024-01-18 09:36:51 -07:00 committed by GitHub
parent 35029bcae8
commit 98960f2eb3
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
94 changed files with 384 additions and 24 deletions

View file

@ -6,5 +6,5 @@ source .buildkite/scripts/common/util.sh
echo --- Elastic Assistant OpenAPI Code Generation
(cd x-pack/plugins/elastic_assistant && yarn openapi:generate)
(cd x-pack/packages/kbn-elastic-assistant-common && yarn openapi:generate)
check_for_changed_files "yarn openapi:generate" true

View file

@ -72,6 +72,10 @@ import { z } from 'zod';
/*
* NOTICE: Do not edit this file manually.
* This file is automatically generated by the OpenAPI Generator, @kbn/openapi-generator.
*
* info:
* title: Install Prebuilt Rules API endpoint
* version: 1
*/
export type InstallPrebuiltRulesResponse = z.infer<typeof InstallPrebuiltRulesResponse>;
@ -134,17 +138,18 @@ echo --- Security Solution OpenAPI Code Generation
check_for_changed_files "yarn openapi:generate" true
```
This scripts sets up the minimal environment required fro code generation and runs the code generation script. Then it checks if there are any changes and commits them if there are any using the `check_for_changed_files` function.
This script sets up the minimal environment required for code generation and runs the code generation script. Then it checks if there are any changes and commits them if there are any using the `check_for_changed_files` function.
Then add the code generation script to your plugin build pipeline. Open your plugin build pipeline, for example `.buildkite/pipelines/pull_request/base.yml`, and add the following command to the steps list adjusting the path to your code generation script:
Then add the code generation script to the build pipeline. Open the buildkite checks at`.buildkite/scripts/steps/checks.sh`, and add the path to your code generation script:
```yaml
- command: .buildkite/scripts/steps/code_generation/security_solution_codegen.sh
label: 'Security Solution OpenAPI codegen'
agents:
queue: n2-2-spot
timeout_in_minutes: 60
parallelism: 1
```sh
...
.buildkite/scripts/steps/checks/saved_objects_definition_change.sh
.buildkite/scripts/steps/code_generation/elastic_assistant_codegen.sh
.buildkite/scripts/steps/code_generation/security_solution_codegen.sh
.buildkite/scripts/steps/code_generation/osquery_codegen.sh
.buildkite/scripts/steps/checks/yarn_deduplicate.sh
...
```
Now on every pull request the code generation script will run and commit the changes if there are any.

View file

@ -7,5 +7,7 @@
*/
export function getGeneratedFilePath(sourcePath: string) {
return sourcePath.replace(/\..+$/, '.gen.ts');
// Remove any double extension like `.schema.yaml` or `.schema.yml` and replace with `.gen.ts`
const secondToLastDot = sourcePath.lastIndexOf('.', sourcePath.lastIndexOf('.') - 1);
return `${sourcePath.substring(0, secondToLastDot)}.gen.ts`;
}

View file

@ -12,10 +12,12 @@ import { getComponents } from './lib/get_components';
import { getImportsMap, ImportsMap } from './lib/get_imports_map';
import { normalizeSchema } from './lib/normalize_schema';
import { NormalizedOperation, OpenApiDocument } from './openapi_types';
import { getInfo } from './lib/get_info';
export interface GenerationContext {
components: OpenAPIV3.ComponentsObject | undefined;
operations: NormalizedOperation[];
info: OpenAPIV3.InfoObject;
imports: ImportsMap;
}
@ -24,11 +26,13 @@ export function getGenerationContext(document: OpenApiDocument): GenerationConte
const components = getComponents(normalizedDocument);
const operations = getApiOperationsList(normalizedDocument);
const info = getInfo(normalizedDocument);
const imports = getImportsMap(normalizedDocument);
return {
components,
operations,
info,
imports,
};
}

View file

@ -0,0 +1,13 @@
/*
* Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
* or more contributor license agreements. Licensed under the Elastic License
* 2.0 and the Server Side Public License, v 1; you may not use this file except
* in compliance with, at your election, the Elastic License 2.0 or the Server
* Side Public License, v 1.
*/
import type { OpenApiDocument } from '../openapi_types';
export function getInfo(parsedSchema: OpenApiDocument) {
return parsedSchema.info;
}

View file

@ -1,5 +1,8 @@
/*
* NOTICE: Do not edit this file manually.
* This file is automatically generated by the OpenAPI Generator, @kbn/openapi-generator.
*
* info:
* title: {{info.title}}
* version: {{info.version}}
*/

View file

@ -18,3 +18,19 @@ To (interactively) run unit tests with code coverage, run the following command:
```sh
cd $KIBANA_HOME && node scripts/jest --watch x-pack/packages/kbn-elastic-assistant-common --coverage
```
## OpenAPI Codegen
Implemented using the new OpenAPI codegen and bundle packages:
* Includes OpenAPI codegen script and CI action as detailed in: https://github.com/elastic/kibana/pull/166269
* Includes OpenAPI docs bundling script as detailed in: https://github.com/elastic/kibana/pull/171526
To run codegen/bundling locally, cd to `x-pack/packages/kbn-elastic-assistant-common/` and run any of the following commands:
```bash
yarn openapi:generate
yarn openapi:generate:debug
yarn openapi:bundle
```
Codegen is configured to run on CI by means of the `.buildkite/scripts/steps/code_generation/elastic_assistant_codegen.sh` script, which is run as part of the `checks` pipeline, and is registered in `.buildkite/scripts/steps/checks.sh`.

View file

@ -10,6 +10,10 @@ import { z } from 'zod';
/*
* NOTICE: Do not edit this file manually.
* This file is automatically generated by the OpenAPI Generator, @kbn/openapi-generator.
*
* info:
* title: Get Capabilities API endpoint
* version: 1
*/
export type GetCapabilitiesResponse = z.infer<typeof GetCapabilitiesResponse>;

View file

@ -5,6 +5,8 @@
* 2.0.
*/
export { GetCapabilitiesResponse } from './impl/schemas/capabilities/get_capabilities_route.gen';
export { defaultAssistantFeatures } from './impl/capabilities';
export type { AssistantFeatures } from './impl/capabilities';

View file

@ -3,5 +3,10 @@
"private": true,
"version": "1.0.0",
"license": "Elastic License 2.0",
"sideEffects": false
"sideEffects": false,
"scripts": {
"openapi:generate": "node scripts/openapi/generate",
"openapi:generate:debug": "node --inspect-brk scripts/openapi/generate",
"openapi:bundle": "node scripts/openapi/bundle"
}
}

View file

@ -7,12 +7,13 @@
require('../../../../../src/setup_node_env');
const { bundle } = require('@kbn/openapi-bundler');
// eslint-disable-next-line import/no-nodejs-modules
const { resolve } = require('path');
const ELASTIC_ASSISTANT_ROOT = resolve(__dirname, '../..');
bundle({
rootDir: ELASTIC_ASSISTANT_ROOT,
sourceGlob: './server/schemas/**/*.schema.yaml',
sourceGlob: './impl/schemas/**/*.schema.yaml',
outputFilePath: './target/openapi/elastic_assistant.bundled.schema.yaml',
});

View file

@ -7,12 +7,13 @@
require('../../../../../src/setup_node_env');
const { generate } = require('@kbn/openapi-generator');
// eslint-disable-next-line import/no-nodejs-modules
const { resolve } = require('path');
const ELASTIC_ASSISTANT_ROOT = resolve(__dirname, '../..');
generate({
rootDir: ELASTIC_ASSISTANT_ROOT,
sourceGlob: './server/schemas/**/*.schema.yaml',
sourceGlob: './impl/schemas/**/*.schema.yaml',
templateName: 'zod_operation_schema',
});

View file

@ -6,15 +6,13 @@
*/
import { HttpSetup, IHttpFetchError } from '@kbn/core-http-browser';
import { AssistantFeatures } from '@kbn/elastic-assistant-common';
import { GetCapabilitiesResponse } from '@kbn/elastic-assistant-common';
export interface GetCapabilitiesParams {
http: HttpSetup;
signal?: AbortSignal | undefined;
}
export type GetCapabilitiesResponse = AssistantFeatures;
/**
* API call for fetching assistant capabilities
*

View file

@ -10,7 +10,8 @@ import { useQuery } from '@tanstack/react-query';
import type { HttpSetup, IHttpFetchError, ResponseErrorBody } from '@kbn/core-http-browser';
import type { IToasts } from '@kbn/core-notifications-browser';
import { i18n } from '@kbn/i18n';
import { getCapabilities, GetCapabilitiesResponse } from './capabilities';
import type { GetCapabilitiesResponse } from '@kbn/elastic-assistant-common';
import { getCapabilities } from './capabilities';
const CAPABILITIES_QUERY_KEY = ['elastic-assistant', 'capabilities'];

View file

@ -5,9 +5,6 @@
"private": true,
"license": "Elastic License 2.0",
"scripts": {
"evaluate-model": "node ./scripts/model_evaluator",
"openapi:generate": "node scripts/openapi/generate",
"openapi:generate:debug": "node --inspect-brk scripts/openapi/generate",
"openapi:bundle": "node scripts/openapi/bundle"
"evaluate-model": "node ./scripts/model_evaluator"
}
}

View file

@ -8,10 +8,10 @@
import { IKibanaResponse, IRouter } from '@kbn/core/server';
import { transformError } from '@kbn/securitysolution-es-utils';
import type { GetCapabilitiesResponse } from '@kbn/elastic-assistant-common';
import { CAPABILITIES } from '../../../common/constants';
import { ElasticAssistantRequestHandlerContext } from '../../types';
import { GetCapabilitiesResponse } from '../../schemas/capabilities/get_capabilities_route.gen';
import { buildResponse } from '../../lib/build_response';
import { DEFAULT_PLUGIN_NAME, getPluginNameFromRequest } from '../helpers';

View file

@ -10,6 +10,10 @@ import { z } from 'zod';
/*
* NOTICE: Do not edit this file manually.
* This file is automatically generated by the OpenAPI Generator, @kbn/openapi-generator.
*
* info:
* title: Assets Status Schema
* version: 1
*/
export type AssetsRequestQuery = z.infer<typeof AssetsRequestQuery>;

View file

@ -10,6 +10,10 @@ import { z } from 'zod';
/*
* NOTICE: Do not edit this file manually.
* This file is automatically generated by the OpenAPI Generator, @kbn/openapi-generator.
*
* info:
* title: Get agent details schema
* version: 1
*/
export type GetAgentDetailsRequestParams = z.infer<typeof GetAgentDetailsRequestParams>;

View file

@ -10,6 +10,10 @@ import { z } from 'zod';
/*
* NOTICE: Do not edit this file manually.
* This file is automatically generated by the OpenAPI Generator, @kbn/openapi-generator.
*
* info:
* title: Get agent policies schema
* version: 1
*/
export type GetAgentPoliciesRequestParams = z.infer<typeof GetAgentPoliciesRequestParams>;

View file

@ -10,6 +10,10 @@ import { z } from 'zod';
/*
* NOTICE: Do not edit this file manually.
* This file is automatically generated by the OpenAPI Generator, @kbn/openapi-generator.
*
* info:
* title: Get agent policy schema
* version: 1
*/
import { Id } from '../model/schema/common_attributes.gen';

View file

@ -10,6 +10,10 @@ import { z } from 'zod';
/*
* NOTICE: Do not edit this file manually.
* This file is automatically generated by the OpenAPI Generator, @kbn/openapi-generator.
*
* info:
* title: Get agent status schema
* version: 1
*/
import { KueryOrUndefined, Id } from '../model/schema/common_attributes.gen';

View file

@ -10,6 +10,10 @@ import { z } from 'zod';
/*
* NOTICE: Do not edit this file manually.
* This file is automatically generated by the OpenAPI Generator, @kbn/openapi-generator.
*
* info:
* title: Get agents schema
* version: 1
*/
export type GetAgentsRequestParams = z.infer<typeof GetAgentsRequestParams>;

View file

@ -10,6 +10,10 @@ import { z } from 'zod';
/*
* NOTICE: Do not edit this file manually.
* This file is automatically generated by the OpenAPI Generator, @kbn/openapi-generator.
*
* info:
* title: Get package policies schema
* version: 1
*/
export type GetPackagePoliciesRequestParams = z.infer<typeof GetPackagePoliciesRequestParams>;

View file

@ -10,6 +10,10 @@ import { z } from 'zod';
/*
* NOTICE: Do not edit this file manually.
* This file is automatically generated by the OpenAPI Generator, @kbn/openapi-generator.
*
* info:
* title: Create Live Query Schema
* version: 2023-10-31
*/
import {

View file

@ -10,6 +10,10 @@ import { z } from 'zod';
/*
* NOTICE: Do not edit this file manually.
* This file is automatically generated by the OpenAPI Generator, @kbn/openapi-generator.
*
* info:
* title: Find Live Queries Schema
* version: 2023-10-31
*/
import {

View file

@ -10,6 +10,10 @@ import { z } from 'zod';
/*
* NOTICE: Do not edit this file manually.
* This file is automatically generated by the OpenAPI Generator, @kbn/openapi-generator.
*
* info:
* title: Get Live Query Details Schema
* version: 2023-10-31
*/
export type SuccessResponse = z.infer<typeof SuccessResponse>;

View file

@ -10,6 +10,10 @@ import { z } from 'zod';
/*
* NOTICE: Do not edit this file manually.
* This file is automatically generated by the OpenAPI Generator, @kbn/openapi-generator.
*
* info:
* title: Get Live Query Results Schema
* version: 2023-10-31
*/
import {

View file

@ -10,6 +10,10 @@ import { z } from 'zod';
/*
* NOTICE: Do not edit this file manually.
* This file is automatically generated by the OpenAPI Generator, @kbn/openapi-generator.
*
* info:
* title: Common Osquery Attributes
* version: 2023-10-31
*/
export type Id = z.infer<typeof Id>;

View file

@ -10,6 +10,10 @@ import { z } from 'zod';
/*
* NOTICE: Do not edit this file manually.
* This file is automatically generated by the OpenAPI Generator, @kbn/openapi-generator.
*
* info:
* title: Create Pack Schema
* version: 2023-10-31
*/
import {

View file

@ -10,6 +10,10 @@ import { z } from 'zod';
/*
* NOTICE: Do not edit this file manually.
* This file is automatically generated by the OpenAPI Generator, @kbn/openapi-generator.
*
* info:
* title: Delete Saved Queries Schema
* version: 2023-10-31
*/
import { PackId } from '../model/schema/common_attributes.gen';

View file

@ -10,6 +10,10 @@ import { z } from 'zod';
/*
* NOTICE: Do not edit this file manually.
* This file is automatically generated by the OpenAPI Generator, @kbn/openapi-generator.
*
* info:
* title: Find Saved Queries Schema
* version: 2023-10-31
*/
import {

View file

@ -10,6 +10,10 @@ import { z } from 'zod';
/*
* NOTICE: Do not edit this file manually.
* This file is automatically generated by the OpenAPI Generator, @kbn/openapi-generator.
*
* info:
* title: Read Saved Queries Schema
* version: 2023-10-31
*/
import { PackId } from '../model/schema/common_attributes.gen';

View file

@ -10,6 +10,10 @@ import { z } from 'zod';
/*
* NOTICE: Do not edit this file manually.
* This file is automatically generated by the OpenAPI Generator, @kbn/openapi-generator.
*
* info:
* title: Update Saved Query Schema
* version: 2023-10-31
*/
import {

View file

@ -10,6 +10,10 @@ import { z } from 'zod';
/*
* NOTICE: Do not edit this file manually.
* This file is automatically generated by the OpenAPI Generator, @kbn/openapi-generator.
*
* info:
* title: Create Saved Query Schema
* version: 2023-10-31
*/
import {

View file

@ -10,6 +10,10 @@ import { z } from 'zod';
/*
* NOTICE: Do not edit this file manually.
* This file is automatically generated by the OpenAPI Generator, @kbn/openapi-generator.
*
* info:
* title: Delete Saved Queries Schema
* version: 2023-10-31
*/
import { SavedQueryId } from '../model/schema/common_attributes.gen';

View file

@ -10,6 +10,10 @@ import { z } from 'zod';
/*
* NOTICE: Do not edit this file manually.
* This file is automatically generated by the OpenAPI Generator, @kbn/openapi-generator.
*
* info:
* title: Find Saved Queries Schema
* version: 2023-10-31
*/
import {

View file

@ -10,6 +10,10 @@ import { z } from 'zod';
/*
* NOTICE: Do not edit this file manually.
* This file is automatically generated by the OpenAPI Generator, @kbn/openapi-generator.
*
* info:
* title: Read Saved Queries Schema
* version: 2023-10-31
*/
import { SavedQueryId } from '../model/schema/common_attributes.gen';

View file

@ -10,6 +10,10 @@ import { z } from 'zod';
/*
* NOTICE: Do not edit this file manually.
* This file is automatically generated by the OpenAPI Generator, @kbn/openapi-generator.
*
* info:
* title: Update Saved Query Schema
* version: 2023-10-31
*/
import {

View file

@ -10,6 +10,10 @@ import { z } from 'zod';
/*
* NOTICE: Do not edit this file manually.
* This file is automatically generated by the OpenAPI Generator, @kbn/openapi-generator.
*
* info:
* title: Assign alerts API endpoint
* version: 2023-10-31
*/
import { NonEmptyString } from '../model/rule_schema/common_attributes.gen';

View file

@ -10,6 +10,10 @@ import { z } from 'zod';
/*
* NOTICE: Do not edit this file manually.
* This file is automatically generated by the OpenAPI Generator, @kbn/openapi-generator.
*
* info:
* title: Error Schema
* version: not applicable
*/
import { RuleSignatureId } from './rule_schema/common_attributes.gen';

View file

@ -10,6 +10,10 @@ import { z } from 'zod';
/*
* NOTICE: Do not edit this file manually.
* This file is automatically generated by the OpenAPI Generator, @kbn/openapi-generator.
*
* info:
* title: Pagination Schema
* version: not applicable
*/
/**

View file

@ -10,6 +10,10 @@ import { z } from 'zod';
/*
* NOTICE: Do not edit this file manually.
* This file is automatically generated by the OpenAPI Generator, @kbn/openapi-generator.
*
* info:
* title: Response Actions Schema
* version: not applicable
*/
export type ResponseActionTypes = z.infer<typeof ResponseActionTypes>;

View file

@ -11,6 +11,10 @@ import { isValidDateMath } from '@kbn/zod-helpers';
/*
* NOTICE: Do not edit this file manually.
* This file is automatically generated by the OpenAPI Generator, @kbn/openapi-generator.
*
* info:
* title: Common Rule Attributes
* version: not applicable
*/
/**

View file

@ -10,6 +10,10 @@ import { z } from 'zod';
/*
* NOTICE: Do not edit this file manually.
* This file is automatically generated by the OpenAPI Generator, @kbn/openapi-generator.
*
* info:
* title: Security Rule Schema
* version: not applicable
*/
import {

View file

@ -10,6 +10,10 @@ import { z } from 'zod';
/*
* NOTICE: Do not edit this file manually.
* This file is automatically generated by the OpenAPI Generator, @kbn/openapi-generator.
*
* info:
* title: EQL Rule Attributes
* version: not applicable
*/
export type EventCategoryOverride = z.infer<typeof EventCategoryOverride>;

View file

@ -10,6 +10,10 @@ import { z } from 'zod';
/*
* NOTICE: Do not edit this file manually.
* This file is automatically generated by the OpenAPI Generator, @kbn/openapi-generator.
*
* info:
* title: ML Rule Attributes
* version: not applicable
*/
/**

View file

@ -10,6 +10,10 @@ import { z } from 'zod';
/*
* NOTICE: Do not edit this file manually.
* This file is automatically generated by the OpenAPI Generator, @kbn/openapi-generator.
*
* info:
* title: New Terms Attributes
* version: not applicable
*/
import { NonEmptyString } from '../common_attributes.gen';

View file

@ -10,6 +10,10 @@ import { z } from 'zod';
/*
* NOTICE: Do not edit this file manually.
* This file is automatically generated by the OpenAPI Generator, @kbn/openapi-generator.
*
* info:
* title: Query Rule Attributes
* version: not applicable
*/
import { AlertSuppressionDuration } from '../common_attributes.gen';

View file

@ -10,6 +10,10 @@ import { z } from 'zod';
/*
* NOTICE: Do not edit this file manually.
* This file is automatically generated by the OpenAPI Generator, @kbn/openapi-generator.
*
* info:
* title: Threat Match Rule Attributes
* version: not applicable
*/
import { NonEmptyString } from '../common_attributes.gen';

View file

@ -10,6 +10,10 @@ import { z } from 'zod';
/*
* NOTICE: Do not edit this file manually.
* This file is automatically generated by the OpenAPI Generator, @kbn/openapi-generator.
*
* info:
* title: Threshold Rule Attributes
* version: not applicable
*/
import { AlertSuppressionDuration } from '../common_attributes.gen';

View file

@ -10,6 +10,10 @@ import { z } from 'zod';
/*
* NOTICE: Do not edit this file manually.
* This file is automatically generated by the OpenAPI Generator, @kbn/openapi-generator.
*
* info:
* title: Sorting Schema
* version: not applicable
*/
export type SortOrder = z.infer<typeof SortOrder>;

View file

@ -10,6 +10,10 @@ import { z } from 'zod';
/*
* NOTICE: Do not edit this file manually.
* This file is automatically generated by the OpenAPI Generator, @kbn/openapi-generator.
*
* info:
* title: Warning Schema
* version: not applicable
*/
export type WarningSchema = z.infer<typeof WarningSchema>;

View file

@ -10,6 +10,10 @@ import { z } from 'zod';
/*
* NOTICE: Do not edit this file manually.
* This file is automatically generated by the OpenAPI Generator, @kbn/openapi-generator.
*
* info:
* title: Prebuilt Rules Status API endpoint
* version: 2023-10-31
*/
export type GetPrebuiltRulesAndTimelinesStatusResponse = z.infer<

View file

@ -10,6 +10,10 @@ import { z } from 'zod';
/*
* NOTICE: Do not edit this file manually.
* This file is automatically generated by the OpenAPI Generator, @kbn/openapi-generator.
*
* info:
* title: Install Prebuilt Rules API endpoint
* version: 2023-10-31
*/
export type InstallPrebuiltRulesAndTimelinesResponse = z.infer<

View file

@ -11,6 +11,10 @@ import { BooleanFromString } from '@kbn/zod-helpers';
/*
* NOTICE: Do not edit this file manually.
* This file is automatically generated by the OpenAPI Generator, @kbn/openapi-generator.
*
* info:
* title: Bulk Actions API endpoint
* version: 2023-10-31
*/
import { RuleResponse } from '../../model/rule_schema/rule_schemas.gen';

View file

@ -10,6 +10,10 @@ import { z } from 'zod';
/*
* NOTICE: Do not edit this file manually.
* This file is automatically generated by the OpenAPI Generator, @kbn/openapi-generator.
*
* info:
* title: Bulk Create API endpoint
* version: 2023-10-31
*/
import { RuleCreateProps } from '../../../model/rule_schema/rule_schemas.gen';

View file

@ -10,6 +10,10 @@ import { z } from 'zod';
/*
* NOTICE: Do not edit this file manually.
* This file is automatically generated by the OpenAPI Generator, @kbn/openapi-generator.
*
* info:
* title: Bulk Delete API endpoint
* version: 2023-10-31
*/
import { RuleObjectId, RuleSignatureId } from '../../../model/rule_schema/common_attributes.gen';

View file

@ -10,6 +10,10 @@ import { z } from 'zod';
/*
* NOTICE: Do not edit this file manually.
* This file is automatically generated by the OpenAPI Generator, @kbn/openapi-generator.
*
* info:
* title: Bulk Patch API endpoint
* version: 2023-10-31
*/
import { RulePatchProps } from '../../../model/rule_schema/rule_schemas.gen';

View file

@ -10,6 +10,10 @@ import { z } from 'zod';
/*
* NOTICE: Do not edit this file manually.
* This file is automatically generated by the OpenAPI Generator, @kbn/openapi-generator.
*
* info:
* title: Bulk Update API endpoint
* version: 2023-10-31
*/
import { RuleUpdateProps } from '../../../model/rule_schema/rule_schemas.gen';

View file

@ -10,6 +10,10 @@ import { z } from 'zod';
/*
* NOTICE: Do not edit this file manually.
* This file is automatically generated by the OpenAPI Generator, @kbn/openapi-generator.
*
* info:
* title: Bulk Response Schema
* version: 8.9.0
*/
import { RuleResponse } from '../../model/rule_schema/rule_schemas.gen';

View file

@ -10,6 +10,10 @@ import type { z } from 'zod';
/*
* NOTICE: Do not edit this file manually.
* This file is automatically generated by the OpenAPI Generator, @kbn/openapi-generator.
*
* info:
* title: Create Rule API endpoint
* version: 2023-10-31
*/
import { RuleCreateProps, RuleResponse } from '../../../model/rule_schema/rule_schemas.gen';

View file

@ -10,6 +10,10 @@ import { z } from 'zod';
/*
* NOTICE: Do not edit this file manually.
* This file is automatically generated by the OpenAPI Generator, @kbn/openapi-generator.
*
* info:
* title: Delete Rule API endpoint
* version: 2023-10-31
*/
import { RuleObjectId, RuleSignatureId } from '../../../model/rule_schema/common_attributes.gen';

View file

@ -10,6 +10,10 @@ import type { z } from 'zod';
/*
* NOTICE: Do not edit this file manually.
* This file is automatically generated by the OpenAPI Generator, @kbn/openapi-generator.
*
* info:
* title: Patch Rule API endpoint
* version: 2023-10-31
*/
import { RulePatchProps, RuleResponse } from '../../../model/rule_schema/rule_schemas.gen';

View file

@ -10,6 +10,10 @@ import { z } from 'zod';
/*
* NOTICE: Do not edit this file manually.
* This file is automatically generated by the OpenAPI Generator, @kbn/openapi-generator.
*
* info:
* title: Read Rule API endpoint
* version: 2023-10-31
*/
import { RuleObjectId, RuleSignatureId } from '../../../model/rule_schema/common_attributes.gen';

View file

@ -10,6 +10,10 @@ import type { z } from 'zod';
/*
* NOTICE: Do not edit this file manually.
* This file is automatically generated by the OpenAPI Generator, @kbn/openapi-generator.
*
* info:
* title: Update Rule API endpoint
* version: 2023-10-31
*/
import { RuleUpdateProps, RuleResponse } from '../../../model/rule_schema/rule_schemas.gen';

View file

@ -11,6 +11,10 @@ import { BooleanFromString } from '@kbn/zod-helpers';
/*
* NOTICE: Do not edit this file manually.
* This file is automatically generated by the OpenAPI Generator, @kbn/openapi-generator.
*
* info:
* title: Export Rules API endpoint
* version: 2023-10-31
*/
import { RuleSignatureId } from '../../model/rule_schema/common_attributes.gen';

View file

@ -11,6 +11,10 @@ import { ArrayFromString } from '@kbn/zod-helpers';
/*
* NOTICE: Do not edit this file manually.
* This file is automatically generated by the OpenAPI Generator, @kbn/openapi-generator.
*
* info:
* title: Find Rules API endpoint
* version: 2023-10-31
*/
import { SortOrder } from '../../model/sorting.gen';

View file

@ -11,6 +11,10 @@ import { BooleanFromString } from '@kbn/zod-helpers';
/*
* NOTICE: Do not edit this file manually.
* This file is automatically generated by the OpenAPI Generator, @kbn/openapi-generator.
*
* info:
* title: Import Rules API endpoint
* version: 2023-10-31
*/
import { ErrorSchema } from '../../model/error_schema.gen';

View file

@ -10,6 +10,10 @@ import type { z } from 'zod';
/*
* NOTICE: Do not edit this file manually.
* This file is automatically generated by the OpenAPI Generator, @kbn/openapi-generator.
*
* info:
* title: Tags API endpoint
* version: 2023-10-31
*/
import { RuleTagArray } from '../../model/rule_schema/common_attributes.gen';

View file

@ -10,6 +10,10 @@ import { z } from 'zod';
/*
* NOTICE: Do not edit this file manually.
* This file is automatically generated by the OpenAPI Generator, @kbn/openapi-generator.
*
* info:
* title: Execution Event Schema
* version: not applicable
*/
export type LogLevel = z.infer<typeof LogLevel>;

View file

@ -10,6 +10,10 @@ import { z } from 'zod';
/*
* NOTICE: Do not edit this file manually.
* This file is automatically generated by the OpenAPI Generator, @kbn/openapi-generator.
*
* info:
* title: Execution Metrics Schema
* version: not applicable
*/
export type RuleExecutionMetrics = z.infer<typeof RuleExecutionMetrics>;

View file

@ -10,6 +10,10 @@ import { z } from 'zod';
/*
* NOTICE: Do not edit this file manually.
* This file is automatically generated by the OpenAPI Generator, @kbn/openapi-generator.
*
* info:
* title: Execution Result Schema
* version: not applicable
*/
/**

View file

@ -10,6 +10,10 @@ import { z } from 'zod';
/*
* NOTICE: Do not edit this file manually.
* This file is automatically generated by the OpenAPI Generator, @kbn/openapi-generator.
*
* info:
* title: Execution Status Schema
* version: not applicable
*/
/**

View file

@ -10,6 +10,10 @@ import { z } from 'zod';
/*
* NOTICE: Do not edit this file manually.
* This file is automatically generated by the OpenAPI Generator, @kbn/openapi-generator.
*
* info:
* title: Execution Summary Schema
* version: not applicable
*/
import { RuleExecutionStatus, RuleExecutionStatusOrder } from './execution_status.gen';

View file

@ -11,6 +11,10 @@ import { ArrayFromString } from '@kbn/zod-helpers';
/*
* NOTICE: Do not edit this file manually.
* This file is automatically generated by the OpenAPI Generator, @kbn/openapi-generator.
*
* info:
* title: Get Rule Execution Events API endpoint
* version: 1
*/
import {

View file

@ -11,6 +11,10 @@ import { ArrayFromString } from '@kbn/zod-helpers';
/*
* NOTICE: Do not edit this file manually.
* This file is automatically generated by the OpenAPI Generator, @kbn/openapi-generator.
*
* info:
* title: Get Rule Execution Results API endpoint
* version: 1
*/
import { RuleExecutionStatus } from '../../model/execution_status.gen';

View file

@ -10,6 +10,10 @@ import { z } from 'zod';
/*
* NOTICE: Do not edit this file manually.
* This file is automatically generated by the OpenAPI Generator, @kbn/openapi-generator.
*
* info:
* title: Suggest user profiles API endpoint
* version: 2023-10-31
*/
export type SuggestUserProfilesRequestQuery = z.infer<typeof SuggestUserProfilesRequestQuery>;

View file

@ -10,6 +10,10 @@ import { z } from 'zod';
/*
* NOTICE: Do not edit this file manually.
* This file is automatically generated by the OpenAPI Generator, @kbn/openapi-generator.
*
* info:
* title: Audit Log Schema
* version: 2023-10-31
*/
import { Page, PageSize, StartDate, EndDate, AgentId } from '../model/schema/common.gen';

View file

@ -10,6 +10,10 @@ import { z } from 'zod';
/*
* NOTICE: Do not edit this file manually.
* This file is automatically generated by the OpenAPI Generator, @kbn/openapi-generator.
*
* info:
* title: Details Schema
* version: 2023-10-31
*/
export type DetailsRequestParams = z.infer<typeof DetailsRequestParams>;

View file

@ -10,6 +10,10 @@ import { z } from 'zod';
/*
* NOTICE: Do not edit this file manually.
* This file is automatically generated by the OpenAPI Generator, @kbn/openapi-generator.
*
* info:
* title: Execute Action Schema
* version: 2023-10-31
*/
import { BaseActionSchema, Command, Timeout } from '../model/schema/common.gen';

View file

@ -10,6 +10,10 @@ import { z } from 'zod';
/*
* NOTICE: Do not edit this file manually.
* This file is automatically generated by the OpenAPI Generator, @kbn/openapi-generator.
*
* info:
* title: File Download Schema
* version: 2023-10-31
*/
export type FileDownloadRequestParams = z.infer<typeof FileDownloadRequestParams>;

View file

@ -10,6 +10,10 @@ import { z } from 'zod';
/*
* NOTICE: Do not edit this file manually.
* This file is automatically generated by the OpenAPI Generator, @kbn/openapi-generator.
*
* info:
* title: File Info Schema
* version: 2023-10-31
*/
export type FileInfoRequestParams = z.infer<typeof FileInfoRequestParams>;

View file

@ -10,6 +10,10 @@ import { z } from 'zod';
/*
* NOTICE: Do not edit this file manually.
* This file is automatically generated by the OpenAPI Generator, @kbn/openapi-generator.
*
* info:
* title: File Upload Schema
* version: 2023-10-31
*/
import { BaseActionSchema } from '../model/schema/common.gen';

View file

@ -10,6 +10,10 @@ import { z } from 'zod';
/*
* NOTICE: Do not edit this file manually.
* This file is automatically generated by the OpenAPI Generator, @kbn/openapi-generator.
*
* info:
* title: Get File Schema
* version: 2023-10-31
*/
import { BaseActionSchema } from '../model/schema/common.gen';

View file

@ -10,6 +10,10 @@ import { z } from 'zod';
/*
* NOTICE: Do not edit this file manually.
* This file is automatically generated by the OpenAPI Generator, @kbn/openapi-generator.
*
* info:
* title: Actions List Schema
* version: 2023-10-31
*/
import {

View file

@ -10,6 +10,10 @@ import { z } from 'zod';
/*
* NOTICE: Do not edit this file manually.
* This file is automatically generated by the OpenAPI Generator, @kbn/openapi-generator.
*
* info:
* title: List Metadata Schema
* version: 2023-10-31
*/
export type ListRequestQuery = z.infer<typeof ListRequestQuery>;

View file

@ -10,6 +10,10 @@ import { z } from 'zod';
/*
* NOTICE: Do not edit this file manually.
* This file is automatically generated by the OpenAPI Generator, @kbn/openapi-generator.
*
* info:
* title: Common Endpoint Attributes
* version: 2023-10-31
*/
export type Id = z.infer<typeof Id>;

View file

@ -10,6 +10,10 @@ import { z } from 'zod';
/*
* NOTICE: Do not edit this file manually.
* This file is automatically generated by the OpenAPI Generator, @kbn/openapi-generator.
*
* info:
* title: Endpoint Policy Schema
* version: 2023-10-31
*/
import { SuccessResponse, AgentId } from '../model/schema/common.gen';

View file

@ -10,6 +10,10 @@ import { z } from 'zod';
/*
* NOTICE: Do not edit this file manually.
* This file is automatically generated by the OpenAPI Generator, @kbn/openapi-generator.
*
* info:
* title: Get Suggestions Schema
* version: 2023-10-31
*/
import { SuccessResponse } from '../model/schema/common.gen';

View file

@ -10,6 +10,10 @@ import { z } from 'zod';
/*
* NOTICE: Do not edit this file manually.
* This file is automatically generated by the OpenAPI Generator, @kbn/openapi-generator.
*
* info:
* title: Asset Criticality Common Schema
* version: 1.0.0
*/
export type IdField = z.infer<typeof IdField>;

View file

@ -10,6 +10,10 @@ import { z } from 'zod';
/*
* NOTICE: Do not edit this file manually.
* This file is automatically generated by the OpenAPI Generator, @kbn/openapi-generator.
*
* info:
* title: Asset Criticality Status Schema
* version: 1.0.0
*/
export type AssetCriticalityStatusResponse = z.infer<typeof AssetCriticalityStatusResponse>;

View file

@ -10,6 +10,10 @@ import { z } from 'zod';
/*
* NOTICE: Do not edit this file manually.
* This file is automatically generated by the OpenAPI Generator, @kbn/openapi-generator.
*
* info:
* title: Entity Analytics Common Schema
* version: 1.0.0
*/
export type EntityAnalyticsPrivileges = z.infer<typeof EntityAnalyticsPrivileges>;

View file

@ -10,6 +10,10 @@ import { z } from 'zod';
/*
* NOTICE: Do not edit this file manually.
* This file is automatically generated by the OpenAPI Generator, @kbn/openapi-generator.
*
* info:
* title: Risk Scoring API
* version: 1.0.0
*/
import { DateRange } from '../common/common.gen';