import type { PostgresJsDatabase } from "drizzle-orm/postgres-js"; import type { z } from "zod"; import type { upsertResourceTemplateSchema } from "./validation.js"; export type UpsertResourceTemplateInput = z.infer; export interface ResourceTemplate { id: string; productOptionId: string; kind: string; refType: string | null; refId: string | null; capacity: number; namePattern: string; layout: string | null; defaultCount: number | null; flags: Record; createdAt: string; updatedAt: string; } export interface ProductOptionResourceTemplates { id: string; name: string; code: string | null; description: string | null; status: string; isDefault: boolean; sortOrder: number; templates: ResourceTemplate[]; } export declare function listProductOptionResourceTemplates(db: PostgresJsDatabase, productId: string): Promise; export declare function upsertProductOptionResourceTemplate(db: PostgresJsDatabase, productId: string, productOptionId: string, kind: string, input: UpsertResourceTemplateInput): Promise; export declare function deleteProductOptionResourceTemplate(db: PostgresJsDatabase, productId: string, productOptionId: string, kind: string, refId?: string | null): Promise<{ productOptionId: string; kind: string; } | null>;