import type { CommonTableExpressionNameNode } from './common-table-expression-name-node.js'; import type { OperationNode } from './operation-node.js'; type CommonTableExpressionNodeProps = Pick; export interface CommonTableExpressionNode extends OperationNode { readonly kind: 'CommonTableExpressionNode'; readonly name: CommonTableExpressionNameNode; readonly materialized?: boolean; readonly expression: OperationNode; } type CommonTableExpressionNodeFactory = Readonly<{ is(node: OperationNode): node is CommonTableExpressionNode; create(name: CommonTableExpressionNameNode, expression: OperationNode): Readonly; cloneWith(node: CommonTableExpressionNode, props: CommonTableExpressionNodeProps): Readonly; }>; /** * @internal */ export declare const CommonTableExpressionNode: CommonTableExpressionNodeFactory; export {};