TypeScript/tests/cases/conformance/jsx/tsxAttributeResolution16.tsx

30 lines
623 B
TypeScript
Raw Normal View History

2017-02-21 23:29:22 +01:00
// @filename: file.tsx
// @jsx: preserve
// @noLib: true
// @skipLibCheck: true
2017-02-21 23:29:22 +01:00
// @libFiles: react.d.ts,lib.d.ts
import React = require('react');
interface Address {
street: string;
country: string;
}
interface CanadianAddress extends Address {
postalCode: string;
}
interface AmericanAddress extends Address {
zipCode: string;
}
type Properties = CanadianAddress | AmericanAddress;
export class AddressComp extends React.Component<Properties, void> {
public render() {
return null;
}
}
let a = <AddressComp postalCode='T1B 0L3' street="vancouver" country="CA" />