// DO NOT EDIT: This file is autogenerated via the builtin command.

package secrets

import (
	ast "github.com/influxdata/flux/ast"
	runtime "github.com/influxdata/flux/runtime"
)

func init() {
	runtime.RegisterPackage(pkgAST)
}

var pkgAST = &ast.Package{
	BaseNode: ast.BaseNode{
		Comments: nil,
		Errors:   nil,
		Loc:      nil,
	},
	Files: []*ast.File{&ast.File{
		BaseNode: ast.BaseNode{
			Comments: nil,
			Errors:   nil,
			Loc: &ast.SourceLocation{
				End: ast.Position{
					Column: 12,
					Line:   35,
				},
				File:   "secrets.flux",
				Source: "package secrets\n\n\n// get is a function that retrieves a secret from the InfluxDB\n//  secret store.\n//\n// ## Parameters\n// - `key` is the secret key to retrieve.\n//\n// ## Example\n//\n// ```\n// import \"influxdata/influxdb/secrets\"\n//\n// secrets.get(key: \"KEY_NAME\")\n// ```\n//\n// ## Populate sensitive credentials with secrets\n//\n// ```\n// import \"sql\"\n// import \"influxdata/influxdb/secrets\"\n//\n// username = secrets.get(key: \"POSTGRES_USERNAME\")\n// password = secrets.get(key: \"POSTGRES_PASSWORD\")\n//\n// sql.from(\n//   driverName: \"postgres\",\n//   dataSourceName: \"postgresql://${username}:${password}@localhost\",\n//   query:\"SELECT * FROM example-table\"\n// )\n// ```\nbuiltin get",
				Start: ast.Position{
					Column: 1,
					Line:   3,
				},
			},
		},
		Body: []ast.Statement{&ast.BuiltinStatement{
			BaseNode: ast.BaseNode{
				Comments: []ast.Comment{ast.Comment{Text: "// get is a function that retrieves a secret from the InfluxDB\n"}, ast.Comment{Text: "//  secret store.\n"}, ast.Comment{Text: "//\n"}, ast.Comment{Text: "// ## Parameters\n"}, ast.Comment{Text: "// - `key` is the secret key to retrieve.\n"}, ast.Comment{Text: "//\n"}, ast.Comment{Text: "// ## Example\n"}, ast.Comment{Text: "//\n"}, ast.Comment{Text: "// ```\n"}, ast.Comment{Text: "// import \"influxdata/influxdb/secrets\"\n"}, ast.Comment{Text: "//\n"}, ast.Comment{Text: "// secrets.get(key: \"KEY_NAME\")\n"}, ast.Comment{Text: "// ```\n"}, ast.Comment{Text: "//\n"}, ast.Comment{Text: "// ## Populate sensitive credentials with secrets\n"}, ast.Comment{Text: "//\n"}, ast.Comment{Text: "// ```\n"}, ast.Comment{Text: "// import \"sql\"\n"}, ast.Comment{Text: "// import \"influxdata/influxdb/secrets\"\n"}, ast.Comment{Text: "//\n"}, ast.Comment{Text: "// username = secrets.get(key: \"POSTGRES_USERNAME\")\n"}, ast.Comment{Text: "// password = secrets.get(key: \"POSTGRES_PASSWORD\")\n"}, ast.Comment{Text: "//\n"}, ast.Comment{Text: "// sql.from(\n"}, ast.Comment{Text: "//   driverName: \"postgres\",\n"}, ast.Comment{Text: "//   dataSourceName: \"postgresql://${username}:${password}@localhost\",\n"}, ast.Comment{Text: "//   query:\"SELECT * FROM example-table\"\n"}, ast.Comment{Text: "// )\n"}, ast.Comment{Text: "// ```\n"}},
				Errors:   nil,
				Loc: &ast.SourceLocation{
					End: ast.Position{
						Column: 12,
						Line:   35,
					},
					File:   "secrets.flux",
					Source: "builtin get",
					Start: ast.Position{
						Column: 1,
						Line:   35,
					},
				},
			},
			Colon: nil,
			ID: &ast.Identifier{
				BaseNode: ast.BaseNode{
					Comments: nil,
					Errors:   nil,
					Loc: &ast.SourceLocation{
						End: ast.Position{
							Column: 12,
							Line:   35,
						},
						File:   "secrets.flux",
						Source: "get",
						Start: ast.Position{
							Column: 9,
							Line:   35,
						},
					},
				},
				Name: "get",
			},
			Ty: ast.TypeExpression{
				BaseNode: ast.BaseNode{
					Comments: nil,
					Errors:   nil,
					Loc: &ast.SourceLocation{
						End: ast.Position{
							Column: 38,
							Line:   35,
						},
						File:   "secrets.flux",
						Source: "(key: string) => string",
						Start: ast.Position{
							Column: 15,
							Line:   35,
						},
					},
				},
				Constraints: []*ast.TypeConstraint{},
				Ty: &ast.FunctionType{
					BaseNode: ast.BaseNode{
						Comments: nil,
						Errors:   nil,
						Loc: &ast.SourceLocation{
							End: ast.Position{
								Column: 38,
								Line:   35,
							},
							File:   "secrets.flux",
							Source: "(key: string) => string",
							Start: ast.Position{
								Column: 15,
								Line:   35,
							},
						},
					},
					Parameters: []*ast.ParameterType{&ast.ParameterType{
						BaseNode: ast.BaseNode{
							Comments: nil,
							Errors:   nil,
							Loc: &ast.SourceLocation{
								End: ast.Position{
									Column: 27,
									Line:   35,
								},
								File:   "secrets.flux",
								Source: "key: string",
								Start: ast.Position{
									Column: 16,
									Line:   35,
								},
							},
						},
						Kind: "Required",
						Name: &ast.Identifier{
							BaseNode: ast.BaseNode{
								Comments: nil,
								Errors:   nil,
								Loc: &ast.SourceLocation{
									End: ast.Position{
										Column: 19,
										Line:   35,
									},
									File:   "secrets.flux",
									Source: "key",
									Start: ast.Position{
										Column: 16,
										Line:   35,
									},
								},
							},
							Name: "key",
						},
						Ty: &ast.NamedType{
							BaseNode: ast.BaseNode{
								Comments: nil,
								Errors:   nil,
								Loc: &ast.SourceLocation{
									End: ast.Position{
										Column: 27,
										Line:   35,
									},
									File:   "secrets.flux",
									Source: "string",
									Start: ast.Position{
										Column: 21,
										Line:   35,
									},
								},
							},
							ID: &ast.Identifier{
								BaseNode: ast.BaseNode{
									Comments: nil,
									Errors:   nil,
									Loc: &ast.SourceLocation{
										End: ast.Position{
											Column: 27,
											Line:   35,
										},
										File:   "secrets.flux",
										Source: "string",
										Start: ast.Position{
											Column: 21,
											Line:   35,
										},
									},
								},
								Name: "string",
							},
						},
					}},
					Return: &ast.NamedType{
						BaseNode: ast.BaseNode{
							Comments: nil,
							Errors:   nil,
							Loc: &ast.SourceLocation{
								End: ast.Position{
									Column: 38,
									Line:   35,
								},
								File:   "secrets.flux",
								Source: "string",
								Start: ast.Position{
									Column: 32,
									Line:   35,
								},
							},
						},
						ID: &ast.Identifier{
							BaseNode: ast.BaseNode{
								Comments: nil,
								Errors:   nil,
								Loc: &ast.SourceLocation{
									End: ast.Position{
										Column: 38,
										Line:   35,
									},
									File:   "secrets.flux",
									Source: "string",
									Start: ast.Position{
										Column: 32,
										Line:   35,
									},
								},
							},
							Name: "string",
						},
					},
				},
			},
		}},
		Eof:      nil,
		Imports:  nil,
		Metadata: "parser-type=rust",
		Name:     "secrets.flux",
		Package: &ast.PackageClause{
			BaseNode: ast.BaseNode{
				Comments: []ast.Comment{ast.Comment{Text: "// Flux InfluxDB Secrets package provides functions and tools for working\n"}, ast.Comment{Text: "// with sensitive secrets managed by InfluxDB.\n"}},
				Errors:   nil,
				Loc: &ast.SourceLocation{
					End: ast.Position{
						Column: 16,
						Line:   3,
					},
					File:   "secrets.flux",
					Source: "package secrets",
					Start: ast.Position{
						Column: 1,
						Line:   3,
					},
				},
			},
			Name: &ast.Identifier{
				BaseNode: ast.BaseNode{
					Comments: nil,
					Errors:   nil,
					Loc: &ast.SourceLocation{
						End: ast.Position{
							Column: 16,
							Line:   3,
						},
						File:   "secrets.flux",
						Source: "secrets",
						Start: ast.Position{
							Column: 9,
							Line:   3,
						},
					},
				},
				Name: "secrets",
			},
		},
	}},
	Package: "secrets",
	Path:    "influxdata/influxdb/secrets",
}
