twing
Version:
First-class Twig engine for the JavaScript ecosystem
231 lines (230 loc) • 18.6 kB
TypeScript
export type { TwingCache, TwingSynchronousCache } from "./light/cache";
export type { TwingError } from "./light/error";
export type { TwingBaseError, TwingErrorLocation } from "./light/error/base";
export type { TwingParsingError } from "./light/error/parsing";
export type { TwingRuntimeError } from "./light/error/runtime";
export { isATwingError } from "./light/error";
export { createParsingError } from "./light/error/parsing";
export { createRuntimeError } from "./light/error/runtime";
export { createTemplateLoadingError } from "./light/error/loader";
export type { TwingArrayLoader, TwingSynchronousArrayLoader } from "./light/loader/array";
export type { TwingChainLoader, TwingSynchronousChainLoader } from "./light/loader/chain";
export type { TwingLoader, TwingSynchronousLoader } from "./light/loader";
export { createArrayLoader, createSynchronousArrayLoader } from "./light/loader/array";
export { createChainLoader, createSynchronousChainLoader } from "./light/loader/chain";
export type { TwingMarkup } from "./light/markup";
export { createMarkup, isAMarkup } from "./light/markup";
export type { TwingBaseNode, TwingBaseNodeAttributes, TwingBaseNodeChildren, TwingNode, TwingNodeAttributes, TwingNodeChildren, TwingNodeType, KeysOf } from "./light/node";
export type { TwingApplyNode, TwingApplyNodeAttributes, TwingApplyNodeChildren } from "./light/node/apply";
export type { TwingAutoEscapeNode, TwingAutoEscapeNodeAttributes } from "./light/node/auto-escape";
export type { TwingBlockNode, TwingBlockNodeAttributes } from "./light/node/block";
export type { TwingBlockReferenceNode, TwingBlockReferenceNodeAttributes } from "./light/node/block-reference";
export type { TwingCheckSecurityNode, TwingCheckSecurityNodeAttributes } from "./light/node/check-security";
export type { TwingCheckToStringNode } from "./light/node/check-to-string";
export type { TwingCommentNode, TwingCommentNodeAttributes } from "./light/node/comment";
export type { TwingDeprecatedNode } from "./light/node/deprecated";
export type { TwingDoNode } from "./light/node/do";
export type { TwingExpressionNode, TwingBaseExpressionNode, TwingBaseExpressionNodeAttributes } from "./light/node/expression";
export type { TwingFlushNode } from "./light/node/flush";
export type { TwingForNode, TwingForNodeAttributes, TwingForNodeChildren } from "./light/node/for";
export type { TwingForLoopNode, TwingForLoopNodeAttributes } from "./light/node/for-loop";
export type { TwingIfNode, TwingIfNodeChildren } from "./light/node/if";
export type { TwingImportNode, TwingImportNodeAttributes } from "./light/node/import";
export type { TwingBaseIncludeNode, TwingBaseIncludeNodeAttributes, TwingBaseIncludeNodeChildren } from "./light/node/include";
export type { TwingLineNode, TwingLineNodeAttributes } from "./light/node/line";
export type { TwingMacroNode, TwingMacroNodeAttributes } from "./light/node/macro";
export type { TwingPrintNode } from "./light/node/print";
export type { TwingSandboxNode } from "./light/node/sandbox";
export type { TwingSpacelessNode } from "./light/node/spaceless";
export type { TwingTemplateNode, TwingTemplateNodeAttributes, TwingTemplateNodeChildren } from "./light/node/template";
export type { TwingSetNode, TwingSetNodeAttributes } from "./light/node/set";
export type { TwingTextNode, TwingBaseTextNode, TwingBaseTextNodeAttributes } from "./light/node/text";
export type { TwingTraitNode } from "./light/node/trait";
export type { TwingVerbatimNode } from "./light/node/verbatim";
export type { TwingWithNode, TwingWithNodeAttributes, TwingWithNodeChildren } from "./light/node/with";
export { createApplyNode } from "./light/node/apply";
export { createAutoEscapeNode } from "./light/node/auto-escape";
export { createBlockNode } from "./light/node/block";
export { createBlockReferenceNode } from "./light/node/block-reference";
export { createCheckSecurityNode } from "./light/node/check-security";
export { createCheckToStringNode } from "./light/node/check-to-string";
export { createCommentNode } from "./light/node/comment";
export { createDeprecatedNode } from "./light/node/deprecated";
export { createDoNode } from "./light/node/do";
export { createFlushNode } from "./light/node/flush";
export { createForNode } from "./light/node/for";
export { createForLoopNode } from "./light/node/for-loop";
export { createIfNode } from "./light/node/if";
export { createImportNode } from "./light/node/import";
export { createBaseIncludeNode } from "./light/node/include";
export { createLineNode } from "./light/node/line";
export { createMacroNode } from "./light/node/macro";
export { createPrintNode } from "./light/node/print";
export { createSandboxNode } from "./light/node/sandbox";
export { createSetNode } from "./light/node/set";
export { createSpacelessNode } from "./light/node/spaceless";
export { createTemplateNode } from "./light/node/template";
export { createTextNode } from "./light/node/text";
export { createTraitNode } from "./light/node/trait";
export { createVerbatimNode } from "./light/node/verbatim";
export { createWithNode } from "./light/node/with";
export type { TwingBaseArrayNode, TwingArrayNode } from "./light/node/expression/array";
export type { TwingArrowFunctionNode } from "./light/node/expression/arrow-function";
export type { TwingAssignmentNode, TwingAssignmentNodeAttributes } from "./light/node/expression/assignment";
export type { TwingAttributeAccessorNode, TwingAttributeAccessorNodeAttributes, TwingAttributeAccessorNodeChildren, TwingAttributeAccessorCallType } from "./light/node/expression/attribute-accessor";
export type { TwingBaseBinaryNode, TwingBinaryNode } from "./light/node/expression/binary";
export type { TwingBlockFunctionNode, TwingBlockFunctionNodeAttributes, TwingBlockFunctionNodeChildren } from "./light/node/expression/block-function";
export type { TwingBaseCallNode, TwingCallNode, TwingBaseCallNodeChildren, TwingBaseCallNodeAttributes } from "./light/node/expression/call";
export type { TwingBaseConditionalNode, TwingConditionalNode } from "./light/node/expression/conditional";
export type { TwingConstantNode, TwingConstantNodeAttributes, TwingConstantNodeValue } from "./light/node/expression/constant";
export type { TwingEscapeNode, TwingEscapeNodeAttributes } from "./light/node/expression/escape";
export type { TwingHashNode } from "./light/node/expression/hash";
export type { TwingMethodCallNode, TwingMethodCallNodeAttributes } from "./light/node/expression/method-call";
export type { TwingNameNode, TwingNameNodeAttributes } from "./light/node/expression/name";
export type { TwingNullishCoalescingNode } from "./light/node/expression/nullish-coalescing";
export type { TwingParentFunctionNode } from "./light/node/expression/parent-function";
export type { TwingSpreadNode } from "./light/node/expression/spread";
export type { TwingBaseUnaryNode, TwingUnaryNode } from "./light/node/expression/unary";
export { createBaseArrayNode, createArrayNode } from "./light/node/expression/array";
export { createArrowFunctionNode } from "./light/node/expression/arrow-function";
export { createAssignmentNode } from "./light/node/expression/assignment";
export { createAttributeAccessorNode } from "./light/node/expression/attribute-accessor";
export { createBaseBinaryNode } from "./light/node/expression/binary";
export { createBlockFunctionNode } from "./light/node/expression/block-function";
export { createBaseCallNode } from "./light/node/expression/call";
export { createBaseConditionalNode, createConditionalNode } from "./light/node/expression/conditional";
export { createConstantNode } from "./light/node/expression/constant";
export { createEscapeNode } from "./light/node/expression/escape";
export { createHashNode } from "./light/node/expression/hash";
export { createMethodCallNode } from "./light/node/expression/method-call";
export { createNameNode } from "./light/node/expression/name";
export { createNullishCoalescingNode } from "./light/node/expression/nullish-coalescing";
export { createParentFunctionNode } from "./light/node/expression/parent-function";
export { createSpreadNode } from "./light/node/expression/spread";
export { createBaseUnaryNode } from "./light/node/expression/unary";
export type { TwingAddNode } from "./light/node/expression/binary/add";
export type { TwingAndNode } from "./light/node/expression/binary/and";
export type { TwingBitwiseAndNode } from "./light/node/expression/binary/bitwise-and";
export type { TwingBitwiseOrNode } from "./light/node/expression/binary/bitwise-or";
export type { TwingBitwiseXorNode } from "./light/node/expression/binary/bitwise-xor";
export type { TwingConcatenateNode } from "./light/node/expression/binary/concatenate";
export type { TwingDivideAndFloorNode } from "./light/node/expression/binary/divide-and-floor";
export type { TwingDivideNode } from "./light/node/expression/binary/divide";
export type { TwingEndsWithNode } from "./light/node/expression/binary/ends-with";
export type { TwingHasEveryNode } from "./light/node/expression/binary/has-every";
export type { TwingHasSomeNode } from "./light/node/expression/binary/has-some";
export type { TwingIsEqualToNode } from "./light/node/expression/binary/is-equal-to";
export type { TwingIsGreaterThanOrEqualToNode } from "./light/node/expression/binary/is-greater-than-or-equal-to";
export type { TwingIsGreaterThanNode } from "./light/node/expression/binary/is-greater-than";
export type { TwingIsInNode } from "./light/node/expression/binary/is-in";
export type { TwingIsLessThanOrEqualToNode } from "./light/node/expression/binary/is-less-than-or-equal-to";
export type { TwingIsLessThanNode } from "./light/node/expression/binary/is-less-than";
export type { TwingIsNotEqualToNode } from "./light/node/expression/binary/is-not-equal-to";
export type { TwingIsNotInNode } from "./light/node/expression/binary/is-not-in";
export type { TwingMatchesNode } from "./light/node/expression/binary/matches";
export type { TwingModuloNode } from "./light/node/expression/binary/modulo";
export type { TwingMultiplyNode } from "./light/node/expression/binary/multiply";
export type { TwingOrNode } from "./light/node/expression/binary/or";
export type { TwingPowerNode } from "./light/node/expression/binary/power";
export type { TwingRangeNode } from "./light/node/expression/binary/range";
export type { TwingSpaceshipNode } from "./light/node/expression/binary/spaceship";
export type { TwingStartsWithNode } from "./light/node/expression/binary/starts-with";
export type { TwingSubtractNode } from "./light/node/expression/binary/subtract";
export { createAddNode } from "./light/node/expression/binary/add";
export { createAndNode } from "./light/node/expression/binary/and";
export { createBitwiseAndNode } from "./light/node/expression/binary/bitwise-and";
export { createBitwiseOrNode } from "./light/node/expression/binary/bitwise-or";
export { createBitwiseXorNode } from "./light/node/expression/binary/bitwise-xor";
export { createConcatenateNode } from "./light/node/expression/binary/concatenate";
export { createDivideAndFloorNode } from "./light/node/expression/binary/divide-and-floor";
export { createDivideNode } from "./light/node/expression/binary/divide";
export { createEndsWithNode } from "./light/node/expression/binary/ends-with";
export { createHasEveryNode } from "./light/node/expression/binary/has-every";
export { createHasSomeNode } from "./light/node/expression/binary/has-some";
export { createIsEqualNode } from "./light/node/expression/binary/is-equal-to";
export { createIsGreaterThanNode } from "./light/node/expression/binary/is-greater-than";
export { createIsGreaterThanOrEqualToNode } from "./light/node/expression/binary/is-greater-than-or-equal-to";
export { createIsInNode } from "./light/node/expression/binary/is-in";
export { createIsLessThanNode } from "./light/node/expression/binary/is-less-than";
export { createIsLessThanOrEqualToNode } from "./light/node/expression/binary/is-less-than-or-equal-to";
export { createIsNotEqualToNode } from "./light/node/expression/binary/is-not-equal-to";
export { createIsNotInNode } from "./light/node/expression/binary/is-not-in";
export { createMatchesNode } from "./light/node/expression/binary/matches";
export { createModuloNode } from "./light/node/expression/binary/modulo";
export { createMultiplyNode } from "./light/node/expression/binary/multiply";
export { createOrNode } from "./light/node/expression/binary/or";
export { createPowerNode } from "./light/node/expression/binary/power";
export { createRangeNode } from "./light/node/expression/binary/range";
export { createStartsWithNode } from "./light/node/expression/binary/starts-with";
export { createSubtractNode } from "./light/node/expression/binary/subtract";
export type { TwingFilterNode } from "./light/node/expression/call/filter";
export type { TwingFunctionNode } from "./light/node/expression/call/function";
export type { TwingTestNode } from "./light/node/expression/call/test";
export { createFilterNode } from "./light/node/expression/call/filter";
export { createFunctionNode } from "./light/node/expression/call/function";
export { createTestNode } from "./light/node/expression/call/test";
export type { TwingNegativeNode } from "./light/node/expression/unary/negative";
export type { TwingNotNode } from "./light/node/expression/unary/not";
export type { TwingPositiveNode } from "./light/node/expression/unary/positive";
export { createNegativeNode } from "./light/node/expression/unary/negative";
export { createNotNode } from "./light/node/expression/unary/not";
export { createPositiveNode } from "./light/node/expression/unary/positive";
export type { TwingEmbedNode, TwingEmbedNodeAttributes } from "./light/node/include/embed";
export type { TwingIncludeNode, TwingIncludeNodeChildren } from "./light/node/include/include";
export { createEmbedNode } from "./light/node/include/embed";
export { createIncludeNode } from "./light/node/include/include";
export { executeNode, executeNodeSynchronously, type TwingNodeExecutor, type TwingSynchronousNodeExecutor } from "./light/node-executor";
export type { TwingTagHandler, TwingTokenParser } from "./light/tag-handler";
export { createApplyTagHandler } from "./light/tag-handler/apply";
export { createAutoEscapeTagHandler } from "./light/tag-handler/auto-escape";
export { createBlockTagHandler } from "./light/tag-handler/block";
export { createDeprecatedTagHandler } from "./light/tag-handler/deprecated";
export { createDoTagHandler } from "./light/tag-handler/do";
export { createEmbedTagHandler } from "./light/tag-handler/embed";
export { createExtendsTagHandler } from "./light/tag-handler/extends";
export { createFilterTagHandler } from "./light/tag-handler/filter";
export { createFlushTagHandler } from "./light/tag-handler/flush";
export { createForTagHandler } from "./light/tag-handler/for";
export { createFromTagHandler } from "./light/tag-handler/from";
export { createIfTagHandler } from "./light/tag-handler/if";
export { createImportTagHandler } from "./light/tag-handler/import";
export { createIncludeTagHandler } from "./light/tag-handler/include";
export { createLineTagHandler } from "./light/tag-handler/line";
export { createMacroTagHandler } from "./light/tag-handler/macro";
export { createSandboxTagHandler } from "./light/tag-handler/sandbox";
export { createSetTagHandler } from "./light/tag-handler/set";
export { createSpacelessTagHandler } from "./light/tag-handler/spaceless";
export { createUseTagHandler } from "./light/tag-handler/use";
export { createVerbatimTagHandler } from "./light/tag-handler/verbatim";
export { createWithTagHandler } from "./light/tag-handler/with";
export type { TwingCallable, TwingCallableArgument, TwingCallableWrapperOptions, TwingCallableWrapper, TwingSynchronousCallable, TwingSynchronousCallableWrapper } from "./light/callable-wrapper";
export { type TwingContext, createContext } from "./light/context";
export type { TwingEnvironment, TwingEnvironmentOptions, TwingNumberFormat, TwingSynchronousEnvironment, TwingSynchronousEnvironmentOptions } from "./light/environment";
export type { TwingEscapingStrategy, TwingEscapingStrategyHandler, TwingEscapingStrategyResolver } from "./light/escaping-strategy";
export type { TwingExecutionContext, TwingSynchronousExecutionContext } from "./light/execution-context";
export type { TwingExtension, TwingSynchronousExtension } from "./light/extension";
export type { TwingExtensionSet } from "./light/extension-set";
export type { TwingFilter, TwingSynchronousFilter } from "./light/filter";
export type { TwingFunction, TwingSynchronousFunction } from "./light/function";
export type { TwingLexer } from "./light/lexer";
export type { TwingNodeVisitor } from "./light/node-visitor";
export type { TwingOperator, TwingOperatorAssociativity, TwingOperatorType, TwingOperatorExpressionFactory } from "./light/operator";
export { type TwingOutputBuffer, createOutputBuffer } from "./light/output-buffer";
export type { TwingParser, TwingParserOptions } from "./light/parser";
export type { TwingSandboxSecurityPolicy } from "./light/sandbox/security-policy";
export type { TwingSource } from "./light/source";
export type { TwingTemplateAliases, TwingTemplateBlockMap, TwingTemplateBlockHandler, TwingTemplateMacroHandler, TwingSynchronousTemplateAliases, TwingSynchronousTemplateBlockHandler, TwingSynchronousTemplateBlockMap, TwingSynchronousTemplateMacroHandler } from "./light/template";
export type { TwingTest, TwingSynchronousTest } from "./light/test";
export type { TwingTokenStream } from "./light/token-stream";
export { createEnvironment, createSynchronousEnvironment } from "./light/environment";
export { createExtensionSet } from "./light/extension-set";
export { createFilter, createSynchronousFilter } from "./light/filter";
export { createFunction, createSynchronousFunction } from "./light/function";
export { createLexer } from "./light/lexer";
export { createBaseNode, createNode, getChildren, getChildrenCount } from "./light/node";
export { createOperator } from "./light/operator";
export { createSandboxSecurityPolicy } from "./light/sandbox/security-policy";
export { createSource } from "./light/source";
export { type TwingTemplate, createTemplate, type TwingSynchronousTemplate, createSynchronousTemplate } from "./light/template";
export { type TwingTemplateLoader, type TwingSynchronousTemplateLoader, createTemplateLoader, createSynchronousTemplateLoader } from "./light/template-loader";
export { createTest, createSynchronousTest } from "./light/test";