Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- interface ICustomer {
- name: string;
- }
- class CustomerClass {
- constructor(data: ICustomer) {
- Object.assign(this, data)
- }
- get self() {
- return this as any as ICustomer
- }
- bar() {
- console.log(this.self.name)
- }
- }
- type Customer = CustomerClass & ICustomer
- function Customer(data: ICustomer): Customer {
- const ret = new CustomerClass(data);
- return ret as Customer;
- }
- export {Customer, ICustomer}
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement