import { ClassWithTypeParams } from './generics' ; import { _someCallback_ } from './signatures' ; export let htmlElement ; export let externalReference ; export const externalReferenceInsideTypeParams = new ClassWithTypeParams < HTMLElement , Error > ( ) ; export let stringType ; export const stringLiteralType = 'blue' ; export type unionType = 'ease-in' | 'ease-out' ; export type unionTypeWithSymbols = ' ' | 'string' | 'strong|with|pipes' | 'type`with`backticks' | '*' ; export type unionTypeWithSymbolsDeclarations = { bar : ' ' | 'string' | 'strong|with|pipes' | 'type`with`backticks' | '*' ; } ; export let literalType ; export const objectLiteralType = { '<' : '<foo>' , '<foo>' : 'foo' , '\\n' : 'foo' , '|' : 'foo' , '~' : 'foo' , prop_with_underscore : 'foo' , 'prop|with|pipes' : 'foo' , 'prop`with`backticks' : 'foo' , _ : 'foo' , valueZ : '_foo_' , valueY : function ( cbParam , unionParam , _undercoreParam_ ) { return 'foo' ; } , valueX : { valueZ : 'foo' , valueY : ( z ) => { return { a : 'test' , b : z } ; } , valueA : [ 100 , 200 , 300 ] , } , valueA : 100 , valueB : true , } ; export let tupleType ; export class IntersectionClassA { } export class IntersectionClassB { } export type intersectionType = IntersectionClassA & IntersectionClassB ; export const arrayType = [ 'Apple' , 'Orange' , 'Banana' ] ; export function restUnionTypes ( arg , ... args ) { return null ; } export function generic < T > ( arg ) { return arg ; } export const functionReflectionType = generic ; export const typeOperatorType = Symbol . for ( '__type__' ) ; export type objectLiteralUnionType = string | { z : string ; } ; export type PartialMappedType < T > = { [ P in keyof T ] ? : T [ P ] ; } ; export type ReadonlyMapedType < T > = { readonly [ P in keyof T ] : T [ P ] ; } ; export type ConditionalType < T > = T extends string ? 'string' : T extends number ? 'number' : T extends boolean ? 'boolean' : T extends undefined ? 'undefined' : 'object' ; export type Bar < T , R > = ( foos : ConditionalType < T > [ ] ) => R ; export const baz = ( foos ) => '...' ; export const fooBigInt = BigInt ( 100 ) ; export const barBigInt = 100n ;