Exportación lista para producción
High non-null strictness (safe against unexpected runtime undefined).
/**
* Strongly Typed GraphQL TypeScript Artifacts
* Generated via ToolsAA In-Browser Codegen Engine [Regime: strict-modern]
* 100% In-Browser AST synthesis - Zero server upload
*/
type Maybe<T> = T | null;
type Exact<T extends { [key: string]: unknown }> = { [K in keyof T]: T[K] };
type MakeOptional<T, K extends keyof T> = Omit<T, K> & { [SubKey in K]?: Maybe<T[SubKey]> };
type MakeMaybe<T, K extends keyof T> = Omit<T, K> & { [SubKey in K]: Maybe<T[SubKey]> };
/** All Built-In & Custom GraphQL Scalars */
type Scalars = {
DateTime: string;
};
type Scalars = {
JSON: Record<string, unknown>;
};
type Scalars = {
Money: number;
};
type ProductStatus = 'DRAFT' | 'ACTIVE' | 'ARCHIVED' | 'OUT_OF_STOCK';
type Node = {
__typename?: string;
readonly id: string;
readonly createdAt: string;
readonly updatedAt: string;
};
type MoneyAmount = {
__typename?: 'MoneyAmount';
readonly amount: number;
readonly currency: string;
};
type ProductVariant = {
__typename?: 'ProductVariant';
readonly id: string;
readonly sku: string;
readonly title: string;
readonly price: MoneyAmount;
readonly inStock: boolean;
readonly inventoryQuantity: number;
readonly createdAt: string;
readonly updatedAt: string;
};
type Review = {
__typename?: 'Review';
readonly id: string;
readonly author: string;
readonly rating: number;
readonly comment: Maybe<string>;
readonly metadata: Maybe<Record<string, unknown>>;
readonly createdAt: string;
readonly updatedAt: string;
};
type Product = {
__typename?: 'Product';
readonly id: string;
readonly title: string;
readonly slug: string;
readonly description: Maybe<string>;
readonly status: ProductStatus;
readonly price: MoneyAmount;
readonly variants: ReadonlyArray<ProductVariant>;
readonly reviews: ReadonlyArray<Review>;
readonly createdAt: string;
readonly updatedAt: string;
};
type Query = {
__typename?: 'Query';
readonly product: Maybe<Product>;
readonly products: ReadonlyArray<Product>;
};
type Mutation = {
__typename?: 'Mutation';
readonly createProduct: Product;
readonly deleteProduct: boolean;
};
type CreateProductInput = {
readonly title: string;
readonly slug: string;
readonly description?: Maybe<string>;
readonly price: number;
readonly currency?: Maybe<String = "USD">;
readonly status?: Maybe<ProductStatus = DRAFT>;
};