{
  "version": "1.0.0",
  "timestamp": 0,
  "packageName": "@happyvertical/smrt-prompts",
  "packageVersion": "0.51.10",
  "objects": {
    "@happyvertical/smrt-prompts:PromptOverride": {
      "name": "promptoverride",
      "className": "PromptOverride",
      "qualifiedName": "@happyvertical/smrt-prompts:PromptOverride",
      "collection": "promptoverrides",
      "filePath": "/home/runner/work/smrt/smrt/packages/prompts/src/models/PromptOverride.ts",
      "packageName": "@happyvertical/smrt-prompts",
      "fields": {
        "key": {
          "type": "text",
          "required": true,
          "default": "",
          "_meta": {
            "required": true
          }
        },
        "tenantId": {
          "type": "text",
          "required": false,
          "_meta": {
            "nullable": true
          }
        },
        "template": {
          "type": "text",
          "required": false,
          "_meta": {
            "nullable": true
          }
        },
        "profile": {
          "type": "text",
          "required": false,
          "_meta": {
            "nullable": true
          }
        },
        "model": {
          "type": "text",
          "required": false,
          "_meta": {
            "nullable": true
          }
        },
        "params": {
          "type": "text",
          "required": false,
          "_meta": {
            "nullable": true
          }
        }
      },
      "methods": {
        "getParams": {
          "name": "getParams",
          "async": false,
          "parameters": [],
          "returnType": "PromptParams",
          "isStatic": false,
          "isPublic": true
        },
        "setParams": {
          "name": "setParams",
          "async": false,
          "parameters": [
            {
              "name": "params",
              "type": "PromptParams | null",
              "optional": false,
              "unionBranches": [
                {
                  "type": "PromptParams"
                },
                {
                  "type": "null"
                }
              ]
            }
          ],
          "returnType": "void",
          "isStatic": false,
          "isPublic": true
        },
        "toPromptLayer": {
          "name": "toPromptLayer",
          "async": false,
          "parameters": [],
          "returnType": "PromptLayer",
          "isStatic": false,
          "isPublic": true
        },
        "save": {
          "name": "save",
          "async": true,
          "parameters": [],
          "returnType": "Promise<this>",
          "isStatic": false,
          "isPublic": true
        },
        "delete": {
          "name": "delete",
          "async": true,
          "parameters": [],
          "returnType": "Promise<void>",
          "isStatic": false,
          "isPublic": true
        }
      },
      "decoratorConfig": {
        "tableName": "_smrt_prompt_overrides",
        "conflictColumns": [
          "key",
          "context"
        ],
        "api": {
          "include": [
            "list",
            "get",
            "create",
            "update",
            "delete"
          ]
        },
        "cli": {
          "include": [
            "list",
            "get",
            "create",
            "update",
            "delete"
          ],
          "exclude": [
            "getParams",
            "setParams",
            "toPromptLayer"
          ]
        },
        "mcp": {
          "include": []
        }
      },
      "extends": "SmrtObject",
      "exportName": "PromptOverride",
      "collectionExportName": "PromptOverrideCollection",
      "validationRules": [
        {
          "field": "key",
          "rule": "required",
          "fieldType": "text"
        }
      ],
      "schema": {
        "tableName": "_smrt_prompt_overrides",
        "ddl": "CREATE TABLE IF NOT EXISTS \"_smrt_prompt_overrides\" (\n  \"id\" UUID PRIMARY KEY NOT NULL,\n  \"slug\" TEXT NOT NULL,\n  \"context\" TEXT NOT NULL DEFAULT '',\n  \"created_at\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\n  \"updated_at\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\n  \"key\" TEXT NOT NULL DEFAULT '',\n  \"tenant_id\" TEXT,\n  \"template\" TEXT,\n  \"profile\" TEXT,\n  \"model\" TEXT,\n  \"params\" TEXT\n);",
        "columns": {
          "id": {
            "type": "UUID",
            "primaryKey": true,
            "referenceKind": "id",
            "notNull": true
          },
          "slug": {
            "type": "TEXT",
            "notNull": true
          },
          "context": {
            "type": "TEXT",
            "notNull": true,
            "default": ""
          },
          "created_at": {
            "type": "TIMESTAMP",
            "notNull": true,
            "default": "current_timestamp"
          },
          "updated_at": {
            "type": "TIMESTAMP",
            "notNull": true,
            "default": "current_timestamp"
          },
          "key": {
            "type": "TEXT",
            "notNull": true,
            "unique": false,
            "default": ""
          },
          "tenant_id": {
            "type": "TEXT",
            "notNull": false,
            "unique": false
          },
          "template": {
            "type": "TEXT",
            "notNull": false,
            "unique": false
          },
          "profile": {
            "type": "TEXT",
            "notNull": false,
            "unique": false
          },
          "model": {
            "type": "TEXT",
            "notNull": false,
            "unique": false
          },
          "params": {
            "type": "TEXT",
            "notNull": false,
            "unique": false
          }
        },
        "indexes": [
          {
            "name": "_smrt_prompt_overrides_key_context_idx",
            "columns": [
              "key",
              "context"
            ],
            "unique": true
          },
          {
            "name": "_smrt_prompt_overrides_slug_context_idx",
            "columns": [
              "slug",
              "context"
            ]
          },
          {
            "name": "_smrt_prompt_overrides_created_at_idx",
            "columns": [
              "created_at"
            ]
          }
        ],
        "version": "6f475427"
      },
      "importPath": "@happyvertical/smrt-prompts"
    },
    "@happyvertical/smrt-prompts:PromptOverrideCollection": {
      "name": "promptoverridecollection",
      "className": "PromptOverrideCollection",
      "qualifiedName": "@happyvertical/smrt-prompts:PromptOverrideCollection",
      "collection": "promptoverrides",
      "filePath": "/home/runner/work/smrt/smrt/packages/prompts/src/collections/PromptOverrideCollection.ts",
      "packageName": "@happyvertical/smrt-prompts",
      "fields": {},
      "methods": {
        "getAppOverride": {
          "name": "getAppOverride",
          "async": true,
          "parameters": [
            {
              "name": "key",
              "type": "string",
              "optional": false
            },
            {
              "name": "options",
              "type": "object",
              "optional": true,
              "memberTypes": [
                "string"
              ]
            }
          ],
          "returnType": "Promise<PromptOverride | null>",
          "isStatic": false,
          "isPublic": true
        },
        "getTenantOverride": {
          "name": "getTenantOverride",
          "async": true,
          "parameters": [
            {
              "name": "key",
              "type": "string",
              "optional": false
            },
            {
              "name": "tenantId",
              "type": "string",
              "optional": false
            },
            {
              "name": "options",
              "type": "object",
              "optional": true,
              "memberTypes": [
                "string"
              ]
            }
          ],
          "returnType": "Promise<PromptOverride | null>",
          "isStatic": false,
          "isPublic": true
        },
        "getResolutionLayers": {
          "name": "getResolutionLayers",
          "async": true,
          "parameters": [
            {
              "name": "key",
              "type": "string",
              "optional": false
            },
            {
              "name": "tenantId",
              "type": "string | null",
              "optional": true,
              "unionBranches": [
                {
                  "type": "string"
                },
                {
                  "type": "null"
                }
              ]
            },
            {
              "name": "options",
              "type": "object",
              "optional": true,
              "memberTypes": [
                "string"
              ]
            }
          ],
          "returnType": "Promise<object>",
          "isStatic": false,
          "isPublic": true
        }
      },
      "decoratorConfig": {
        "tableName": "_smrt_prompt_overrides"
      },
      "extends": "SmrtCollection",
      "extendsTypeArg": "PromptOverride",
      "exportName": "PromptOverrideCollection",
      "collectionExportName": "PromptOverrideCollectionCollection",
      "schema": {
        "tableName": "_smrt_prompt_overrides",
        "ddl": "CREATE TABLE IF NOT EXISTS \"_smrt_prompt_overrides\" (\n  \"id\" UUID PRIMARY KEY NOT NULL,\n  \"slug\" TEXT NOT NULL,\n  \"context\" TEXT NOT NULL DEFAULT '',\n  \"created_at\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\n  \"updated_at\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\n  \"key\" TEXT NOT NULL DEFAULT '',\n  \"tenant_id\" TEXT,\n  \"template\" TEXT,\n  \"profile\" TEXT,\n  \"model\" TEXT,\n  \"params\" TEXT\n);",
        "columns": {
          "id": {
            "type": "UUID",
            "primaryKey": true,
            "referenceKind": "id",
            "notNull": true
          },
          "slug": {
            "type": "TEXT",
            "notNull": true
          },
          "context": {
            "type": "TEXT",
            "notNull": true,
            "default": ""
          },
          "created_at": {
            "type": "TIMESTAMP",
            "notNull": true,
            "default": "current_timestamp"
          },
          "updated_at": {
            "type": "TIMESTAMP",
            "notNull": true,
            "default": "current_timestamp"
          },
          "key": {
            "type": "TEXT",
            "notNull": true,
            "unique": false,
            "default": ""
          },
          "tenant_id": {
            "type": "TEXT",
            "notNull": false,
            "unique": false
          },
          "template": {
            "type": "TEXT",
            "notNull": false,
            "unique": false
          },
          "profile": {
            "type": "TEXT",
            "notNull": false,
            "unique": false
          },
          "model": {
            "type": "TEXT",
            "notNull": false,
            "unique": false
          },
          "params": {
            "type": "TEXT",
            "notNull": false,
            "unique": false
          }
        },
        "indexes": [
          {
            "name": "_smrt_prompt_overrides_key_context_idx",
            "columns": [
              "key",
              "context"
            ],
            "unique": true
          },
          {
            "name": "_smrt_prompt_overrides_slug_context_idx",
            "columns": [
              "slug",
              "context"
            ]
          },
          {
            "name": "_smrt_prompt_overrides_created_at_idx",
            "columns": [
              "created_at"
            ]
          }
        ],
        "version": "6f475427"
      },
      "importPath": "@happyvertical/smrt-prompts"
    }
  },
  "moduleType": "smrt",
  "smrtDependencies": [
    "@happyvertical/smrt-core",
    "@happyvertical/smrt-tenancy"
  ]
}